![]() |
#2
rjsp2016-09-28 09:16
|

#ifndef __DATE__
#define __DATE__
class Date;
class Date
{
public:
Date(int y = 0, int m = 0, int d = 0) : year(y), month(m), day(d) { }
int year() const { return year; }
int month() const { return month; }
int day() const { return day; }
private:
int year, month, day;
};
inline bool
operator > (const Date& d1, const Date& d2)
{
bool flag = 0;
if (d1.year() > d2.year()) flag = 1;
else if (d1.year() == d2.year()) {
if (d1.month() > d2.month()) flag = 1;
else if (d1.month() == d2.month()) {
if (d1.day() > d2.day()) flag = 1;
else;
}
else;
}
else;
return flag;
}
inline bool
operator == (const Date& d1, const Date& d2)
{
bool flag = 0;
if (d1.year() == d1.year() && d1.month() == d2.month() && d1.day() == d2.day())
flag = 1;
return flag;
}
inline bool
Date::operator < (const Date& d2)
{
bool flag = 0;
if (d1.year() < d1.year()) flag = 1;
else if (d1.year() == d2.year()) {
if (d1.month() < d2.month()) flag = 1;
else if (d1.month() == d2.month()) {
if (d1.day() < d2.day()) flag = 1;
else;
}
else;
}
else;
return flag;
}
#endif //end __Date__
#define __DATE__
class Date;
class Date
{
public:
Date(int y = 0, int m = 0, int d = 0) : year(y), month(m), day(d) { }
int year() const { return year; }
int month() const { return month; }
int day() const { return day; }
private:
int year, month, day;
};
inline bool
operator > (const Date& d1, const Date& d2)
{
bool flag = 0;
if (d1.year() > d2.year()) flag = 1;
else if (d1.year() == d2.year()) {
if (d1.month() > d2.month()) flag = 1;
else if (d1.month() == d2.month()) {
if (d1.day() > d2.day()) flag = 1;
else;
}
else;
}
else;
return flag;
}
inline bool
operator == (const Date& d1, const Date& d2)
{
bool flag = 0;
if (d1.year() == d1.year() && d1.month() == d2.month() && d1.day() == d2.day())
flag = 1;
return flag;
}
inline bool
Date::operator < (const Date& d2)
{
bool flag = 0;
if (d1.year() < d1.year()) flag = 1;
else if (d1.year() == d2.year()) {
if (d1.month() < d2.month()) flag = 1;
else if (d1.month() == d2.month()) {
if (d1.day() < d2.day()) flag = 1;
else;
}
else;
}
else;
return flag;
}
#endif //end __Date__
----------date_test.cpp-----------------

#include <iostream>
#include "date.h"
using namespace std;
int main()
{
Date d1(2011,1,1);
return 0;
}
#include "date.h"
using namespace std;
int main()
{
Date d1(2011,1,1);
return 0;
}
.\date_test.cpp: In function 'int main()':
.\date_test.cpp:8:5: error: 'Date' was not declared in this scope
Date d1(2011,1,1);
请教这个是什么问题?