Объявить функцию члена класса как функция друга другого классаC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Объявить функцию члена класса как функция друга другого класса

Сообщение Anonymous »

Я создал 2 класса (класс A и класс B) Я объявил класс A перед классом B (заявление о классе A). Я создал публичную функцию в классе B с именем Funb (Temp). В классе A я объявил функцию FUNB класса B как функцию друга класса A. < /p>
Я получаю ошибку, когда пишу определение Funb () внутри определения класса B. но когда я пишу определение функции funb () вне класса B, тогда она работает нормально. < /strong> < /p>
Может ли кто -нибудь объяснить, почему это происходит ????
Я очень запутался. < /p>

Код: Выделить всё

// ERROR
class A;
class B{
public:
void funB(A temp){
printf("friend function");
}
};

class A{
public:
friend void B::funB(A);
};
< /code>
Выше код показывает мне ошибку < /p>
👇 Приведенный ниже код работает нормально. < /p>
class A;
class B{
public:
void funB(A temp);
};

class A{
public:
friend void B::funB(A);
};

void B::funB(A temp){
printf("friend function");
}
ответьте на мою проблему.

Подробнее здесь: https://stackoverflow.com/questions/781 ... ther-class
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»