Homework

Home 1

题目

为Date类实现如下成员:

  1. 构造器,可以初始化年、月、日。
  2. 大于、小于、等于(> 、< 、==)操作符重载,进行日期比较。
  3. print() 打印出类似 2015-10-1 这样的格式。

然后创建两个全局函数:

  1. 第1个函数 CreatePoints生成10个随机的Date,并以数组形式返回;
  2. 第2个函数 Sort 对第1个函数CreatePoints生成的结果,将其按照从小到大进行排序。

最后在main函数中调用CreatePoints,并调用print将结果打印出来。然后调用Sort函数对前面结果处理后,并再次调用print将结果打印出来。

思路

1. 基本运行框架
  • 基本代码
  1. #include<iostream>
  2. usingnamespace std;
  3. int main()
  4. {
  5. cout<<"Hellow World!\n";
  6. return0;
  7. }
  • 编译指令
  1. g++-o homework1 homework1.cpp
2. 构造Date类
  • 程序
  1. #include<iostream>
  2. usingnamespace std;
  3. classDate
  4. {
  5. public:
  6. Date()
  7. {
  8. year=2016;
  9. month=3;
  10. day=1;
  11. }
  12. double get_year()const{return year;}
  13. double get_month()const{return month;}
  14. double get_day()const{return day;}
  15. private:
  16. int year;
  17. int month;
  18. int day;
  19. };
  20. int main()
  21. {
  22. Date mData;
  23. cout<<"Hellow!\n";
  24. cout<<mData.get_year()<<"\n";
  25. return0;
  26. }
  • 主要考虑,类具有初始化能力同时类的参数应该是private
3. 构造输出函数
  1. #include<iostream>
  2. usingnamespace std;
  3. classDate
  4. {
  5. public:
  6. Date()
  7. {
  8. year=2016;
  9. month=3;
  10. day=1;
  11. }
  12. double get_year()const{return year;}
  13. double get_month()const{return month;}
  14. double get_day()const{return day;}
  15. private:
  16. int year;
  17. int month;
  18. int day;
  19. };
  20. voidprint(constDate& d)
  21. {
  22. cout<<d.get_year()<<"-"<<d.get_month()<<"-"<<d.get_day()<<"\n";
  23. }
  24. int main()
  25. {
  26. Date mData;
  27. print(mData);
  28. return0;
  29. }
  • print函数应当使用by refernce传递数据,同时应当避免数据被更改,因此使用cons Reference Parameters.
  • 这种形式一般为const typeName& variableName,因此此处设计为void print(const Date& d)
4. 比较
posted @ 2016-03-04 09:04  Frankww  阅读(388)  评论(0编辑  收藏  举报