C++什么时候生成默认的拷贝构造函数

背景:
如果不提供 那么就是位拷贝
位拷贝的危害?
1.堆上的资源 同一个地址(如果析构这个对象的时候 释放了堆上的资源 很严重)
2.维护了一个文件句柄 比如socket对象
什么时候触发拷贝构造函数?
a.赋值
A b;
A a(b);
A a =b;
b. 函数传参 形参为类对象
c.函数返回值

什么时候生成默认拷贝构造函数?
编译器编译的时候生成 ,为什么生成,为什么要生成,因为不得不生成(为了避免以下问题)。
a.类成员变量也是一个类,该成员类有默认拷贝构造函数
b.类继承自一个基类,该基类有默认拷贝构造函数
c. 类成员中有虚函数
d. 类继承自基类 基类中有虚函数

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值