⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 12_2_3.c

📁 数据结构C语言版台湾知城数位科技有限公司出版2002
💻 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 + -