【3.24】定义一个日期类Date,该类对象存放一个日期,可以提供的操作有:
在写这个程序的时候发生了一个错误:
void printDate(); //显示日期,格式如“日期是:2010年6月8日”
void GetYear (); //取年的值
void GetMonth (); //取月的值void GetDay (); //取日的值
void SetDate (int Y, int m, int d); //设置日期值还允许对日期对象作以下定义:
Date d1(2010,6,8); //用所给日期定义一个日期变量
Date d2; //定义一个日期对象
Date d3(d1); //用已有的日期构造一个新对象
要求每一个成员函数都要被调用。
#include<iostream>
using namespace std;
class Date{
public:
Date(int a, int b, int c)//构造函数
{
year=a;
month=b;
day=c;
}
Date()
{
}
void SetDate (int Y, int m, int d)//设置日期值
{
year=Y;
month=m;
day=d;
}
void printDate() //显示日期,格式如“日期是:2010年6月8日”
{
cout<<"日期为:"<<year<<"."<<month<<"."<<day<<endl;
}
void GetYear () //取年的值
{
cout<<"年:"<<year<<endl;
}
void GetMonth () //取月的值
{
cout<<"月:"<<month<<endl;
}
void GetDay () //取日的值
{
cout<<"日:"<<day<<endl;
}
private:
int year,month,day;
};
int main()
{
Date d1(2010,6,8); //用所给日期定义一个日期变量
d1.printDate();
d1.GetYear();
d1.GetMonth();
d1.GetDay();
Date d2; //定义一个日期对象
d2.SetDate(2015,6,29);
d2.printDate();
d2.GetYear();
d2.GetMonth();
d2.GetDay();
Date d3(d1); //用已有的日期构造一个新对象
d3.printDate();
d3.GetYear();
d3.GetMonth();
d3.GetDay();
}
在写这个程序的时候发生了一个错误:
调用函数的时候没有给参数!
解决方法是把主函数中的d1.printDate; 改为d1.printDate(); 就可以了。原来调用函数时不能省略()啊!!
最后的运行结果: