有如下程序: #include<iostream> using namespace std; class sample { private: int x,y; public: sample(int i

admin2010-03-29  23

问题 有如下程序:    #include<iostream>    using namespace std;    class sample    {    private:      int x,y;    public:      sample(int i,int j)      {       x=i;       y=j;    }    void disp()    {       cout<<"disp1"<<end1;    }    void disp()const     {       cout<<"disp2"<<end1;     }    };    int main()    {      const sample a(1,2);      a.disp();      return 0;     }    该程序运行后的输出结果是

选项 A、disp1
B、disp2
C、disp1 disp2
D、程序编译时出错

答案2

解析 本题考核常对象、常数据和常函数。C++中,在定义常对象时必须进行初始化,而且不能被更新。如果将一个对象说明为常对象,则通过该对象只能调用它的常成员函数。题中,对象a被定义成类sample的常对象,所以通过对象a只能调用其常成员函数disp()。所以程序最后输出disp2。
转载请注明原文地址:https://kaotiyun.com/show/rCjp777K
0

最新回复(0)