单选题
有如下程序: #include<iostream> using namespace std; class MyClass{ public: MyClass(int x):Val(x){} void Set(int x){val=x;} void Print()const{cout<<''val=''<<val<<'\t';} private: int val; }; int main(){ const MyClass obj 1(10); MyClass obj2(20); obj1.Print(); //语句1 obj2.Print(); //语句2 obj1.Set(20);//语句3 obj2.Set(30);//语句4 return 0; } 其主函数中错误的语句是( )。
【正确答案】
C
【答案解析】解析:在创建类对象obj1(10)时,前面有关键字const,所以当语句3调用obj1的成员函数试图修改其私有成员的数值的时候,会编译出错。