当前位置: 首页 > news >正文

网站开发与iso9001关系江苏网页定制

网站开发与iso9001关系,江苏网页定制,网站和新媒体建设管理,互联网公司是什么析构函数的简述 1. 析构函数和构造函数类似,是c规定当对象的生命周期结束时,默认你会调用析构函数。 2. 同理,当我们不写析构函数的时候,编译器会自动生成一个空实现的析构函数。 3. 析构函数只能编译器自己调用,我们…

析构函数的简述 

1. 析构函数和构造函数类似,是c++规定当对象的生命周期结束时,默认你会调用析构函数。

 2. 同理,当我们不写析构函数的时候编译器会自动生成一个空实现的析构函数

 3. 析构函数只能编译器自己调用,我们不能调用。(无论是不是自己写的)

    

析构函数的作用 

我们在析构函数中主要是在对象的生命周期结束时,释放一些内存(例如堆区的内存)。 当然,如果没有内存需要释放,那就可以写一个空实现的,或者不需要写(编译器会加一个)。

析构函数语法 

class Human {
public:Human();~Human();
private:int age;char* name;
};Human::Human() {age = 18;name = new char;
}Human::~Human() {delete name;
}

注意:  1. 析构函数不能有参数,也就说明析构函数只能有一个不能进行函数重载 

          2. 析构函数是在默认构造函数前面加一个~ 

          3. 代码中类内有两个成员变量  --  age 和 name,age是局部变量其生命周期由编译器管理,而name是一个指针,我们为它在堆区开辟了内存,所以需要在对象生命周期结束的时候,释放掉。(这就在析构函数中实现了) 

         4. 对于上面的代码,如果只有age吗,那析构函数就可以写成一个空实现 

析构函数调用时机 

class Human {
public:Human();~Human();
private:int age;char* name;
};Human::Human() {age = 18;name = new char;cout << __FUNCTION__ << endl;
}Human::~Human() {delete name;cout << __FUNCTION__ << endl;
}void test() {Human man;
}int main(void) {test();system("pause");return 0;
}

 1. 在创建对象的时候,会调用构造函数,对象声明周期结束,调用析构函数-- 使用代码来验证。 

 2. __FUNCTION__是一个宏,使用在函数中表示,此函数的名字。 

 3. 对象也是变量,代码中man对象的生命周期为定义-->test函数结束。

结果:  

 可以看出,先调用构造创建,再调用析构结束

http://www.hyszgw.com/news/3493.html

相关文章:

  • 做全屏轮播的网站有哪些百度seo推广首选帝搜软件
  • 富阳注册公司网站seo推广优化
  • 河津市城乡建设局网站百度推广效果不好怎么办
  • 优的网站建设产品的推广及宣传思路
  • 品牌策划案范本星乐seo网站关键词排名优化
  • 公司网站打开显示建设中搭建网站的步骤和顺序
  • 网站做seo优化有什么优势百度招商加盟推广
  • 陕西建设网网青岛seo全网营销
  • wordpress循环文章成都自动seo
  • 福建省建设职业注册资格管理中心网站拓客平台有哪些
  • 长沙理财网站建设南京网站建设
  • 企业网站认证百度识图以图搜图
  • 做网站不推广有效果吗网络营销推广有效方式
  • 国内电商网站有哪些广东seo价格是多少钱
  • 北京公司网站制作免费网站在线观看人数在哪
  • 做网站要找什么软文推广文案
  • 成都网站建设上云朋友圈软文范例
  • 济南专业做企业网站网站seo诊断报告怎么写
  • 做网站的公司在哪沧州百度推广公司
  • 企业文化心得体会内蒙古seo
  • 互联网营销是干嘛的东莞网站推广优化公司
  • 建站平台免费加盟谷歌搜索引擎免费入口 台湾
  • 贵州网站设计公司seo推广平台服务
  • 深圳电子商务网站开发湖南正规关键词优化首选
  • 共享虚拟主机做网站够用么济南网站建设哪家便宜
  • 电子邮箱号码大全复制seo内容优化
  • 怎么把网站放到阿里云直通车关键词优化
  • 科技服务网站建设方案郴州seo外包
  • 成都网站建设易维达好软件开发工资一般多少
  • 什么是网络营销 网络营销有哪些特点厦门seo推广外包