我是使用 C++ 的新手。我需要将一个类的实例声明为另一个类中函数的参数,并将参数实例声明为朋友。我用一个例子来说明。
class foo(){
private:
void a(){
// function definition
}
}
class other_foo(){
public:
void b(foo f){
// function definition
}
}
在上面的示例中,我需要将类 other_foo 声明为 foo 的朋友,以便我可以使用 foo 类的私有函数“a”。我已经阅读了许多其他参考资料,但没有关于它是否真的可能的明确指南。如果没有,你能建议一个解决方法吗?我试图在类 foo 定义中将 other_foo 声明为友元,但编译器在 other_foo 中抛出了一个错误,即私有方法不可访问。我也尝试在参数本身中将实例声明为“friend foo f”,但编译器为此抛出了错误。我实际上需要在哪里声明 other_foo 类是 foo 类的朋友类?