C++面向對象作業1
1 #include
2 #include
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="<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 }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.