我在学习 自制性测试中 有些问题不懂希望 大家给我讲解一下。
#ifndef DATE1_H
#define DATE1_H
#include <string>
class Date{
public:
struct Duration{
int years;
int months;
int days;
Duration(int y,int m,int d):years(y),months(m),days(d){}
};
Date();
Date(int year,int month,int day);
Date(const std::string&);
int getYear()const; // 为什么这里我调用他时,他有返回值他的返回值是从哪来的呢。
int getMonth()const;
int getDay()const;
std::string toString()const;
friend bool operation<(const Date&,const Date&); //这里的作用是什么
friend bool operation<=(const Date&,const Date&);
friend bool operation>(const Date&,const Date&);
friend bool operation>=(const Date&,const Date&);
friend bool operation==(const Date&,const Date&);
friend bool operation!=(const Date&,const Date&);
friend Duration duration(const Date&,const Date&); //这里的作用是什么
};
#endif
在main中
Date mybday(1999,9,9);
Date d2(2003,7,4);
Date::Duration dur = duration (mybday,d2); //这里的是什么作用
test(dur.years==51);
test(dur.months==9);
test(dur.days==3);
自制性测试中的问题