//更改后可以正确运行的代码
#include<iostream.h>
class MyClass
{
public:
MyClass(){member=0;};
MyClass(int i){member=i;}
void SetMember(int m){member=m;}
int GetMember() const {return member;}
void Print() const{cout<<"member="<<member<<endl;}
private:
int member;
};
void main()
{
MyClass obj1;
obj1.Print();
MyClass obj2(3);
obj1.SetMember(5);//member是私有变量,不能够obj1.member这样使用,可以通过公共成员函数来修改。
obj2.SetMember(10);
obj1.Print();
obj2.Print();
}
追问成员数据那不能修改,只能修改main函数里的代码
追答把MyClass类声明里的member变量改成public类型的,也可以直接用MyClass类的对象如obj1,像obj1.member这样直接引用。
追问都说了只能修改main函数里的代码。。。声明那不能动的,,能修改那我还用问么。。。而且你说的对象调用私有成员是不行的,只能通过公有访问私有。
追答只能修改main函数里的代码的话就只能通过访问公共成员函数来修改了,就像我程序里写的那样。obj1.SetMember(5)。
追问能否把答案写出来?要完整的。拜托了。
追答我上面已经把程序贴出来了啊