使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整。请按要求完成下列操作,将类Date的定义补充完成。 (1)定义私有数据成员year、month和day,分别用于表示年、月和日

admin2013-11-15  41

问题 使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整。请按要求完成下列操作,将类Date的定义补充完成。
    (1)定义私有数据成员year、month和day,分别用于表示年、月和日,它们都是int型的数据。请在注释1之后添加适当的语句。
    (2)完成默认构造函数Date的定义,使Date对象的默认值为year=1,month=1,day=1,请在注释2之后添加适当的语句。
    (3)完成重载构造函数Date(int y,int m,int d)的定义,把数据成员year、month和day分别初始化为参数y、m和d的值,请在注释3之后添加适当的语句。
    (4)完成成员函数print的类外定义,使其以“年-月-日”的格式将Date对象的值输出到屏幕上,例如1949-10-1。
请在注释4之后添加适当的语句。
    注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
试题程序:
#include
class Date
{
public:
//********1********
Date(int Y,int m,int d)
{
//********2********
}
void print()const;
private:
//data member
//********3********
};
void Date::print()const
{
//********4********
}
int main()
{
Date Olympic_BJ(2008,8,8);
Olympic_BJ.print();
return 0;
}

选项

答案(1)应添加“Date(){year=1;month=1;day=1;}”或“Date():year(1),month(1),day(1){}”。 (2)应添加“year=y;month=m;day=d;”。 (3)应添加“int year,month,day;”。 (4)应添加“cout<
解析 本题考查了类的定义。根据题意,此处应定义3个int型数据成员year、month和day。根据题意,第2处应添加默认构造函数,并初始化3个变量,这里既可以使用赋值语句来实现,也可以使用初始化列表。第3处只能通过赋值语句初始化3个成员,因为注释3位于函数中,无法在此处使用初始化列表。添加输出语句,注意题目头包含的头文件是iostream.h,不能添加std::前缀。
转载请注明原文地址:https://kaotiyun.com/show/ZHNp777K
0

最新回复(0)