Я новичок в работе с C++. Мне нужно объявить экземпляр класса как параметр функции в другом классе с экземпляром параметра, объявленным как друг. Я иллюстрирую пример.Создание экземпляра класса Friend в параметрах функции
class foo(){
private:
void a(){
// function definition
}
}
class other_foo(){
public:
void b(foo f){
// function definition
}
}
В приведенном выше примере мне нужно объявить класс other_foo как друг для обув, так что я могу использовать класс Foo частные функции „а“. Я прочитал ряд других ссылок, но нет окончательного руководства относительно того, действительно ли это возможно или нет. Если нет, можете ли вы предложить обходной путь? Я попытался объявить other_foo как друга в определении класса foo, но компилятор сделал ошибку с other_foo, что частные методы недоступны. Я также попробовал объявить экземпляр как «friend foo f» в самом параметре, но компилятор сделал для этого ошибку. Где мне действительно нужно объявить, что класс other_foo является классом друзей для класса foo?