例6 使用VC6打开考生文件夹下的工程proj3。此工程包含一个源程序文件main。cpp,其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)定义类Planet的保护数据成员distance和revolve,它们分别表示行星距太阳的距离和行星的公转周期。其中,distance为double型,revolve为int型。请在注释“//1”之后添加适当的语句。
(2)定义类Earth的构造函数Earth(double d,int r),并在其中计算地球绕态阳公转的轨道周长。假定:circumference=2d3。1416。请在注释“//2”之后添加适当的语句。
(3)定义类Earth的成员show(),用于显示所有信息。包含地球距太阳的距离,地球的公转周期,以及地球绕太阳公转的轨道周长。请在注释“//3”之后添加适当的语句。
源程序如下:
#include
class planet
{
protected:
//1
public:
planet(double d,int r)
{
distance=d;
revolve=r;
}
};
class Earth:public planet
{
double circumference;
public:
//2
//3
};
void main()
{
Earth obj(9300000,365);
obj。show;
}
答案: (1)第1处是完成类Planet的保护数据成员distance和revolve的定义,根据题意可填入:double distance;int revolve;。
(2)第2处是定义类Earth的构造函数Earth(double d,int r),并在其中计算地球绕太阳公转的轨道周长。由此可填入:
Earth(double d,int r):planet(d,r){ circumference=2*d*3.1416;}。
(3)第3处是定义类Earth的成员show(),用于显示所有信息。根据要求可填入:void show(){ cout<< }