用asp做旅游网站,新乡市建设路小学网站,公司网页设计实例教程,生存曲线哪个网站可以做我们在了解了类的简单创建后#xff0c;需要对类的创建与销毁有进一步的了解#xff0c;也就是对于类的构造函数与析构函数的了解。
目录
注意#xff1a;
构造函数的特性#xff1a;
析构函数#xff1a; 注意#xff1a;
该部分内容为重难点内容#xff0c;在正常…我们在了解了类的简单创建后需要对类的创建与销毁有进一步的了解也就是对于类的构造函数与析构函数的了解。
目录
注意
构造函数的特性
析构函数 注意
该部分内容为重难点内容在正常的学习与学校的考试中该内容为必要内容读者不能因为其较难而放弃。 类在创建与销毁时会伴随着构造函数和析构函数的调用。 当我们没有对这两个函数进行定义时系统会主动给我们生成一个无参的构造函数和一个无参的析构函数。 构造函数的特性
1.构造函数的函数名与类的名称相同
class Date
{
public:Date(){}~Date(){}
};2.构造函数分为初始化构造函数和拷贝构造函数
注意这一期我们针对初始化构造函数进行讲解拷贝构造函数将放于单独一期 3.构造函数在类创建时对类内数据进行一定的初始话操作
class Date
{public:Date(int year2024,int month7,int day10){_yearyear;_monthmonth;_dayday;}private:int _year,_month,_day;} ; 4.构造函数可以进行函数重载
class Date
{public:Date(){_year2024;_month7;_day10;}Date(int year){_yearyear;}Date(int year,int month){_yearyear;_monthmonth;}Date(int year,int month,int day){_yearyear;_monthmonth;_dayday;}private:int _year,_month,_day;} ;注意我们进行函数重载时需要注意对于析构函数我么要注意函数的各种类型都要对应不然系统就无法匹配相应的构造函数类型。
所以我建议读者在创建构造函数时可以创建全缺省的函数
class Date
{public:Date(int year2024,int month7,int day10){_yearyear;_monthmonth;_dayday;}private:int _year,_month,_day;} ; 析构函数
1.析构函数是在类名前面加一个~ class Date
{public:Date(int year2024,int month7,int day10){pnew int(10);}~Date(){delete[]p;}private:int _year,_month,_day;int*p;
} ;2.析构函数的作用对数据进行释放处理对栈区消耗内存进行及时的释放
如果不进行手动释放内存会有所堆积从而导致栈溢出。 3.对需要内存释放的类必须进行释放处理,也就是我们此时必须要自己写析构函数 4.析构函数不能进行函数重载 对于两者的区别我们不再进行讨论读者自己进行对比吧。