目前我正在读一本书C++
,里面有一些练习。其中一个练习要求构建两个类,每个类都有一个友元方法。我目前的猜测是这样的:
#include <iostream>
using std::cout;
using std::endl;
class Y;
class X{
public:
void friend Y::f(X* x);
void g(Y* y){cout << "inside g(Y*)" << endl;}
};
class Y{
public:
void friend X::g(Y* y);
void f(X* x) {cout << "inside f(X*)" << endl;}
};
但我的猜测没有编译,因为类X
有void friend Y::f(X* x);
方法声明。我怎样才能解决这个难题?请再给我一些猜测。