1.Date這樣的構造函數 析構函數 拷貝構造
默認構造函數有三種 :全缺省的構造函數 無參的構造函數 和編譯器默認生成的構造函數
class Date
{pubilc:void Print()
{
}
private://全缺省的int year=1;int month=1;int day=1;
};
class Date
{pubilc:
Date()//無參的構造 相當于初始化
{ year=0;month=0;day=0;
}void Print()
{
}
private:int year;int month;int day;
};
!值得注意的是 無參的構造并不是沒有參數,而是不用參數傳參就可以構造的函數就是無參構造
2.一般情況的構造函數都得自己完成 因為編譯器對內置類型不做處理
除非像兩個棧是實現一個隊列的情況,都是自定義類型,可以不用再對隊列寫一個構造函數
3.析構函數
析構函數和拷貝構造函數有聯系,一般不用寫析構的,就不用寫拷貝構造。
內部有指針或者一些值指向資源的,就要寫析構釋放,寫拷貝構造完成深拷貝的。如Stack Queue