1 #include <iostream>
2 #include <stdlib.h>
3 using namespace std;
4 class Tdate
5 {
6 public:
7 Tdate(int mm=0,int dd=0,int yy=0);
8 ~Tdate()
9 {
10 cout<<"Call Destructor.\n";
11 }
12 void Tdate::SetDate(int m,int d,int y);
13 void print()
14 {
15 cout<<"month="<<month<<",day="<<day<<",year="<<year<<"\n";
16 }
17 protected:
18 int month,day,year;
19 };
20 Tdate::Tdate(int mm,int dd,int yy)
21 {
22 month=mm;
23 day=dd;
24 year=yy;
25 cout<<"Call Constructor.\n";
26 }
27 void Tdate::SetDate(int m,int d,int y)
28 {
29 if(m>0&&m<13)
30 month=m;
31 if(d>0&&d<32)
32 day=d;
33 if(y>0&&y<3000)
34 year=y;
35 }
36 int main()
37 {
38 Tdate *pd1,*pd2;
39 pd1=new Tdate(1,1,2000);
40 pd1->print();
41 pd2=new Tdate(12,31,2007);
42 if(!pd2)
43 {
44 cout<<"Heap error!\n";
45 exit(1);
46 }
47 else
48 pd2->SetDate(8,8,2008);
49 pd2->print();
50 delete pd1;
51 delete pd2;
52 }