急切寻求C++程序!

来源:百度知道 编辑:UC知道 时间:2024/05/21 19:40:35
--类和对象
实验内容:设计一个表示日期的类Date
要求:
1. 包含三个整型变量年,月,日和一个静态变量sn,sn用以记录产生对象的序号,序号从1开始
2. 实现默认构造、带参数构造、拷贝构造、析构函数,这些函数都需要有输出语句,以便观察结果
3. 成员函数:
int getYear() const//返回年
int getMonth () const //返回月
int getDay() const //返回日
bool isLeap() const;//返回是否是闰年的结果,是,返回true,否,返回false
bool isLeap();//返回是否是闰年的结果,是,返回true,否,返回false
4. 外部函数
Date changeToDate(string dStr)//将一个字符串转化为Date对象并返回,如无法转化则提示出错并返回一个默认值。
5. main方法
l 要求产生调用拷贝构造函数的四个时机;
l 打印观察静态变量的变化;
l 观察使用const修饰的函数与不使用const修饰的函数之间的调用差别;
6. 实验报告
l 结合程序指明调用拷贝四个时机;
l 分析静态变量的变化
l 分析传值与传引用的差别;
l 分析什么时候应该使用const修饰整个函数而什么时候不应该这样做以及它们之间的调用差别

附:闰年的计算方法:公元纪年的年数可以被4而不是世纪年,或是世纪年能被400整除,即为闰年;被100整除而不能被400整除为平年。如2000年是闰年,而1900年不是。

注:主要步骤与所有函数的起始处要有注释

一定要用C++写哦 不能运行的就不要来瞎搀和了!!谢谢合作!

/*
--类和对象
实验内容:设计一个表示日期的类Date
要求:
1. 包含三个整型变量年,月,日和一个静态变量sn,sn用以记录产生对象的序号,序号从1开始
2. 实现默认构造、带参数构造、拷贝构造、析构函数,这些函数都需要有输出语句,以便观察结果
3. 成员函数:
int getYear() const//返回年
int getMonth () const //返回月
int getDay() const //返回日
bool isLeap() const;//返回是否是闰年的结果,是,返回true,否,返回false
bool isLeap();//返回是否是闰年的结果,是,返回true,否,返回false
4. 外部函数
Date changeToDate(string dStr)//将一个字符串转化为Date对象并返回,如无法转化则提示出错并返回一个默认值。
5. main方法
l 要求产生调用拷贝构造函数的四个时机;
l 打印观察静态变量的变化;
l 观察使用const修饰的函数与不使用const修饰的函数之间的调用差别;
6. 实验报告
l 结合程序指明调用拷贝四个时机;
l 分析静态变量的变化
l 分析传值与传引用的差别;
l 分析什么时候应该使用const修饰整个函数而什么时候不应该这样做以及它们之间的调用差别

附:闰年的计算方法:公元纪年的年数可以被4而不是世纪年,或是世纪年能被400整除,即为闰年;
被100整除而不能被400整除为平年。如2000年是闰年,而1900年不是。

注:主要步骤与所有函数的起始处要有注释
*/
//注意,调试环境为VC。
#include <iostream>
#include <string>
using namespace std;
class Date
{
public: