第10题
调试下列程序,并在对程序进行修改后再调试,指出调试中的出错原因 按下列要求对程序进行修改,然后调试,对出现的错误分析其原因。 (1)将派生类B的继承方式改为private时,会出现哪些错误和不正常现象?为什么? (2)将派生类B的继承方式改为protected时,会出现哪些错误和不正常现象?为 什么? (3)将派生类B的继承方式恢复为public后,再将类A中数据成员int型变量a的访 问权限改为private时,会出现哪些错误和不正常现象?为什么? (4)派生类B的继承方式仍为public,将类A中数据成员int型变量a的访问权限改为 protected时,会出现哪些错误和不正常现象?为什么? #include <iostream> using namespace std; class A { public: void seta(int i) { a = i; } int geta() { return a; } public: int a; }; class B :public A { public: void setb(int i) { b = i; } int getb() { return b; } void show() { cout << "A::a = " << a << endl; } public: int b; }; int main() { B bb; bb.seta(6); bb.setb(3); bb.show(); cout << "A::a = " << bb.a << endl; cout << "B::b = " << bb.b << endl; cout << "A::a = " << bb.geta() << endl; cout << "B::b = " << bb.getb() << endl; return 0; }
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!