| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 363 人关注过本帖
标题:请教一个利用构造函数重载问题
只看楼主 加入收藏
心兑
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2014-10-23
结帖率:0
收藏
已结贴  问题点数:20 回复次数:1 
请教一个利用构造函数重载问题
、建立具有如下功能的类Date:
   1) 以多种格式输出日期,如 MM DD YYYY;MM/DD/YY;
June14, 1992;
   2) 用重载的构造函数初始化Date类的对象。初始化值是1)中格式的数据;
   3) 构造函数用头文件time.h中的标准库函数读取系统时间,把读取的时间赋值给Date的数据成员;
   4) 设计一个NextDay()成员函数,把日期往后挪一天。
2014-10-23 16:13
驽马吐了我
Rank: 2
等 级:论坛游民
威 望:1
帖 子:10
专家分:53
注 册:2014-10-10
收藏
得分:20 
#include<iostream.h>
class CDate
{
private:
    int year,month,day;
public:
    void WO(int y,int m,int d)
    {
        year=y;
        month=m;
        day=d;
    }
    void Print()
    {
        cout<<month<<"月"<<day<<"日"<<year<<"年";
    }
void M()
{
    int flag;
   
    switch(month)
    {
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
        if(day<31)
        {    day=day+1;
            cout<<month<<"月"<<day<<"日"<<year<<"年";
        }   
        else
        cout<<month+1<<"月"<<1<<"日"<<year<<"年";break;
    case 12:
        if(day==31)
        {    year=year+1;
            month=1;
            day=1;
            cout<<month<<"月"<<day<<"日"<<year<<"年";
        }
        else
            cout<<month<<"月"<<day+1<<"日"<<year<<"年";break;
    case 4:
    case 6:
    case 9:
    case 11:
        if(day==30)   
        {    month=month+1;
            day=1;
            cout<<month<<"月"<<day<<"日"<<year<<"年";
        }
            else
            cout<<month<<"月"<<day+1<<"日"<<year<<"年";break;
    case 2:
        if(!(year%400))
            flag=1;
        else if(!(year%4)&&year%100)
            flag=1;
        else flag=0;
        if(flag)
            if(day==29)
            {   
                month=month+1;
            day=1;
            cout<<month<<"月"<<day<<"日"<<year<<"年";
            }
            else
                cout<<month<<"月"<<day+1<<"日"<<year<<"年";
            else
                if(day==28)
                {    month=month+1;
                    day=1;
                    cout<<month<<"月"<<day<<"日"<<year<<"年";
                }
                    else
                        cout<<month<<"月"<<day+1<<"日"<<year<<"年";
    }
    }
};


void main()
{
    int y,m,d;
    cin>>y>>m>>d;
    CDate date1;
    date1.WO(y,m,d);
    date1.Print();
    date1.M();
}
2014-10-23 20:28
快速回复:请教一个利用构造函数重载问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015650 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved