📄 12_2_3.c
字号:
/* ======================================== */
/* 程序实例: 12_2_3.cpp */
/* 类的构造函数 */
/* ======================================== */
#include <iostream.h>
class date /* date类声明 */
{
private:
int day; /* 成员资料声明 */
int month;
int year;
int validDate(int d, int m, int y); /* 成员函数声明 */
public:
date(); /* 构造函数声明 */
date(int d, int m, int y); /* 构造函数声明 */
int setDate(int d, int m, int y); /* 成员函数声明 */
void printDate();
};
/* ---------------------------------------- */
/* 成员函数: 检查时间参数是否合法 */
/* ---------------------------------------- */
int date::validDate(int d, int m, int y)
{
/* 检查日期数据是否在范围内 */
if (d < 1 || d > 31) return 0;
if (m < 1 || m > 12) return 0;
if (y < 1900) return 0; /* 不在范围内 */
return 1; /* 合法日期数据 */
}
/* ---------------------------------------- */
/* 构造函数(1): 设置成员数据初始值 */
/* ---------------------------------------- */
date::date()
{
day = 1; /* 设置日期 */
month = 1; /* 设置月份 */
year = 2001; /* 设置年份 */
}
/* ---------------------------------------- */
/* 构造函数(2): 使用参数设置成员数据初始值 */
/* ---------------------------------------- */
date::date(int d, int m, int y)
{
if (validDate(d, m, y)) /* 检查时间参数是否合法 */
{
day = d; /* 设置日期 */
month = m; /* 设置月份 */
year = y; /* 设置年份 */
}
else
{
date();
}
}
/* ---------------------------------------- */
/* 成员函数: 设置时间的成员数据 */
/* ---------------------------------------- */
int date::setDate(int d, int m, int y)
{
if (validDate(d, m, y)) /* 检查时间参数是否合法 */
{
day = d; /* 设置日期 */
month = m; /* 设置月份 */
year = y; /* 设置年份 */
return 1; /* 设置成功 */
}
else
{
return 0; /* 设置失败 */
}
}
/* ---------------------------------------- */
/* 成员函数: 输出成员资料 */
/* ---------------------------------------- */
void date::printDate()
{
/* 输出成员资料的月, 日和年 */
cout << month << '-' << day << '-' << year << '\n';
}
/* ---------------------------------------- */
/* 主程式: 使用构造函数建立date对象 */
/* ---------------------------------------- */
void main(){
date birthday; /* 声明对象 */
/* 使用构造函数声明对象 */
date yesterday(22, 10, 2001);
cout << "预设日期 : ";
birthday.printDate(); /* 使用成员函数输出日期 */
birthday.setDate(3,9,1976); /* 使用成员函数设置初始值 */
cout << "生日日期 : ";
birthday.printDate(); /* 使用成员函数输出日期 */
cout << "昨天日期 : ";
yesterday.printDate(); /* 使用成员函数输出日期 */
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -