class CDate
{
public:
CDate(int nYear, int nMonth, int nDay);
void Display();
void SetDate(int nYear, int nMonth, int nDay);
…
…
…
};
一个CDate对象可以用三个整数表示日、月和年(如:2009,6,1)来初始化,而且可以对日期的设置进行合法性检查。要求实现CDate类的成员变量、构造函数和其他的成员函数。
#include <iostream>
#include <string>
using namespace std;
class CDate
{
private:
int m_nYear;
int m_nMonth;
int m_nDay;
public:
CDate(int nYear, int nMonth, int nDay)
{
m_nYear = nYear;
m_nMonth = nMonth;
m_nDay = nDay;
}
public:
void Display()
{
cout << m_nYear << ":" << m_nMonth << ":" << m_nDay << endl;
}
void SetDate(int nYear, int nMonth, int nDay)
{
if(nYear >= 1900)
m_nYear = nYear;
if(nMonth >= 1 && nMonth <= 12)
m_nMonth = nMonth;
if(nDay >= 1 && nDay <= 30)
m_nDay = nDay;
}
void SetYear(int nYear)
{
if(nYear >= 1900)
m_nYear = nYear;
}
int GetYear()
{
return m_nYear;
}
};
int main()
{
CDate dd(2019,9,15);
dd.Display();
dd.SetDate(2019,9,16);
dd.Display();
system("pause");
return 0;
}