c++类成员指针变量使用心得

shared_ptr要求必须初始化。这样当对象复制之后,智能指针指向了同一片内存,引用自动计数,析构没有问题。但在不同进程间复制的时候会出现问题。不同进程指向了同一片内存。

如果不使用智能指针。使用普通指针,初始化为空。在程序开始时复制的都是空指针,不同进程间复制没有问题。但是一旦调用过函数,指针申请了内存,这时候再复制对象,依然是指向同一片区域,在析构时造成内存重复释放的问题。
另一方面,禁用复制构造函数,py boost在导出时会出现问题。

这个问题暂时无解,不过好在现在都是简单使用,类的实例都是在调用之前复制,复制是空指针,调用之后不会多次复制,这样每个实例调用之后都指向一片新申请的内存,暂时没有内存释放的问题。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值