首页 > 代码库 > 20170529
20170529
一、析构函数
和类型名同名 函数名前有一个~
任何类型都只有一个无参析构函数
析构函数没有返回值类型
在对象销毁前自动调用析构函数,可以人为调用(一般不用)
负责销毁和释放资源
何时需要自定义析构函数?
有堆内存分配的时候(有成员变量是指针类型的时候)
二、拷贝构造函数
复制另外一个对象 根据原来的一个对象,复制出另外一个对象
浅复制
深复制 各个对象都要有自己独立的内存
三、new delete 和 malloc free的区别
new 比 malloc 多做了如下工作
如果类型的成员变量是类类型 自动构建成员
new自动调用构造函数
new自动处理类型转换
delete比free多调用了析构函数
四、static成员
静态成员函数
静态成员变量
和普通成员的区别 普通类型的成员必须通过对象去调用
静态成员不使用对象就可以访问
访问前在数据前加上 类名::
静态成员变量必须在类外进行初始化
静态函数中 不能 直接 访问 非静态成员(线程封装)
20170529
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。