苏州公立医院排名:一个C++关于类的题

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/08 17:48:41
有如下类定义:
class AA
{
int a;
public:
int getref() const {return &a;} //①
int getvalue() const{return a;} //②
void set(int n) const {a=n;} //③
friend void show(AA aa) const {cout<<a;} //④
};

其中的四个函数定义中正确的是?
详细解释下.
谢谢

我觉得是2,我是这样想的:
1.&a的类型为指针,函数返回类型为整型,明显错;
3.a=n这个赋值改变了成员变量,而函数定义为const,应该不能改变,也错;
4.因为friend定义的是友函数,所以show不是成员函数,实现应为cout<<aa.a;