面向对象程序设计题(程序运行结果)有好的答案我加分

来源:百度知道 编辑:UC知道 时间:2024/06/22 07:25:14
1.#include< iostream.h >
class base {
int x;
public:
base(int i)
{x=i;
cout<<"Constructing base class\n";
}
~base()
{cout<<"Destructing base class \n";}
void show ()
{cout<<"x="<<x<<endl;}
};

class derived:public base{
base d;
public:
derived(int i):base(i),d(i)
{
cout<<"Constructing derived class\n";
}
~derived()
{cout<<"Destructing derived class \n";}
};

main()
{ derived obj(5);
obj.show();
return 0;
}
程序运行结果:
2.#include <iostream.h>
class base {
protected:
int a;
public:
base()
{a=5;
cout<<”Constructing base…\n”;
}
};
class base1: virtual public base {
public:
base1()
{cout<<"base1 a=&

1)
Constructing base class
Constructing base class
Constructing derived class
x=5
Destructing derived class
Destructing base class
Destructing base class

2)
Constructing base...
base1 a=5
base2 a=5
derived a=5

3)
The parent. version A
The derived1 info:3 version 1
The derived2 info:15 version A

The derived2 info:15 version A

4)
Line17:no appropriate default constructor available
可将第17行修改为:B(int a):A(a)
Line20:cannot access private member declared in class 'A'
可将第3行修改为:public:int x;
Line41:cannot access public member declared in class 'A'
可将第14行修改为class B:public A{