Я хочу перегрузить оператор < < в одном из моих классов. Подпись выглядит следующим образом:
friend std::ostream& operator<<(std::ostream& os, const Annuaire& obj)
Когда я пытаюсь определить его в файле .cpp, он говорит, что оператор < < точно принимает 1 аргумент, однако, когда я определяю его в .h, он скомпилирован/отлично работает.
Вот как я определяю его в файле .cpp:
std::ostream& Annuaire::operator<<(std::ostream& os, const Annuaire& obj){ // ... }
Имеет ли какое-либо отношение к функциям друга, которые должны быть определены в файлах заголовков?