问题 填空题

类clasg one在声明func成员函数时发生错误,出错原因是______。 class one private: int a; public: void func(two&); }; class two { private: int b; friend vold one::func(two&); }; void one::func(two&r) { a=r.b; }

答案

参考答案:class one前没有声明语句class two;

解析: 当一个类作为另一个类的成员函数、成员函数的参数或其他情况的时候,要确保编译器能正确解析。由于在rclass orle之前没有关于class two的任何说明,而在class one的func函数中却用了class two类的参数。因此是错误的。

填空题
判断题