我的问题很简单。我正在学习朋友功能,但这由于某种原因不起作用。如果我用 Window_Mgr 类交换屏幕类,然后添加屏幕类的前向声明,它只会说。它不起作用是因为屏幕在那个时间点不知道“重新定位”的存在吗?
class Window_Mgr;
class screen
{
public:
typedef string::size_type index;
friend Window_Mgr& Window_Mgr::relocate(int, int, screen&);
private:
int width, height;
};
class Window_Mgr
{
public:
Window_Mgr& relocate(int r, int c, screen& s);
private:
};
Window_Mgr& Window_Mgr::relocate(int r, int c, screen& s)
{
s.height=10;
s.width=10;
};
int main(int argc, char* argv[])
{
system("pause");
}