A-A+
有以下程序: #include <iostream> using namespace std
问题详情
有以下程序: #include <iostream> using namespace std; class sample { private: int n; public: sample(){} sample (int m) { n=m; sample add(sample sl,sample s2) { this->n=sl.n+s2.n; return (*this); } void disp() { cout<<"n="<<n<<end1; } }; int main () { sample sl(10) ,s2 (5),s3; s3.add(s1,s2); s3.disp(); return 0; } 程序运行后,输出的结果是()。
A.n=10
B.n=5
C.n=20
D.n=15请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:D
解析:本题考核this指针的使用。类中成员函数add中的this指针指向该成员函数被调用的对象。在主函数main()中调s3.add(s1,s2),即对象s3的私有变量n的值为对象s1和s2私有变量的和,所以程序最后输出15,即选项D。