下载后可任意编辑自考 C++改错及答案下载后可任意编辑1. #include class Test{private:int x,y=20;public:Test(int i,int j){x=i,y=j;}int getx(){return x;}int gety(){return y;}};void main(){Test mt(10,20);cout<class Test{int x,y;public:fun(int i,int j){x=i;y=j;}show(){cout<<"x="<class A{int i;public:virtual void fun()=0;A(int a){i=a;}};class B:public A{int j;public:void fun(){cout<<"B::fun()\n"; }B(int m,int n=0):A(m),j(n){}};void main(){A *pa;B b(7);pa=&b;}答案:B(int m,int n=0):A(m),j(n){}因为基类是抽象类,不能被实例化,因此在派生类中不能调用初始化基类对象。因此B(int m,int n=0):A(m),j(n){}错误,删去A(m)。[修改]B(int m,int n=0):j(n){}4. #include class X{public:int x;public:X(int x){cout<x=x<x=x<x=x表示式的值要加括号。[修改]cout<<(this->x=x)<#include class Bas{public:Bas(char *s="\0"){strcpy(name,s);}void show();protected:char name[20];};Bas b;void show(){cout<<"name:"<#include #include using namespace std;class A{public:A(const char *na){strcpy(name,na);}private:char name[80];};class B:public A{ public:B(const char *nm):A(nm){}void show();};void B::show(){...