以下程序段共有错误( )处
#include <iostream>
using namespaces std;
class Sample
private:
int n;
public:
Sample(int i)
n=i;
void setvalue(int i)
n=i;
void display()
cout<<"n="<<n<<end1;
;
int main()
const Sample a(l0);
a.setvalue(5);
a.display();
return 0;
A.1
B.2
C.3
D.4
参考答案:B
解析: 本题考核常对象、常数据成员和常成员函数。本程序中有两个错误:第1个错误是a.setvalue(5);语句,由于对象a为常对象,所以对象a的私有数据成员n不能被更新;第2处错误是语句a.display();。由于对象a为常对象,所以通过对象a只能调用它的成员函数,而成员函数display()不是常成员函数。