问题描述
我目前在用C++做算法4,我用shared_ptr管理动态数组,以此实现类似Java的引用那样的垃圾回收,而不用每次手动delete [],请问这个思路有什么不足吗?
问题解答
回答1:管理二维数组可以使用std::vector<shared_ptr>,一维的话直接vector就好,能用智能指针当然可以优先考虑使用
回答2:用vector就好了,遵循RAII原则一般没问题,你的目标应该是内存安全而不是GC

问题描述
我目前在用C++做算法4,我用shared_ptr管理动态数组,以此实现类似Java的引用那样的垃圾回收,而不用每次手动delete [],请问这个思路有什么不足吗?
问题解答
回答1:管理二维数组可以使用std::vector<shared_ptr>,一维的话直接vector就好,能用智能指针当然可以优先考虑使用
回答2:用vector就好了,遵循RAII原则一般没问题,你的目标应该是内存安全而不是GC
相关文章:1. 为什么老师,你de button按钮处可以有两个ID是一样的id="loginbtn" 而不会报错啊2. 为什么矛那里的 <a href=" " 这地方为什么是空的呢 ??3. 为什么总是提示我说Template "movieTemplate" not found,我路径都引对了呀4. <tr valign="top"> 看不懂5. mysql - sphinx查询 "中国" 时也能查询到 "中华人民共和国"6. MySQL"="自动 like7. node.js mysql Cannot find module "net" 和 "tls"和"fs" 的问题8. mysql 使用 join 还是 "," 进行多表查询???9. mysql - 使用hibernate连接数据库时,数据库版本过高不支持关键字"type" ;10. solaris基础和常用知识 (2)

网公网安备:皖ICP备2020019022号-8 Copyright ¢ 2020-2025 Powered by V1.8 All Rights Reserved 技术支持:乐呵呵网
声明:本站所有资源以学习为主