c++的 shared_ptr 大家用的多吗

2019-12-17 16:48:19 +08:00
 everlost

感觉这个东西有点儿厉害呀,如果在项目里统一的用 shared _ ptr 来持有和操作 new 出来的对象,基本上不用担心垃圾回收了.

各位平时在项目里用的多吗?有没有什么坑呢?

6615 次点击
所在节点    C++
31 条回复
yujincheng08
2019-12-17 22:23:06 +08:00
@hehheh 但问题就是很多人无脑上 shared_ptr,以为万能,最后内存泄漏。知道有循环引用问题的也就知道用 unique_ptr 了。
dbow
2019-12-17 22:39:57 +08:00
unique_ptr 用的最多,ownership 确定, 随意写也不容易产生泄露。
5G
2019-12-17 22:52:37 +08:00
@evilhero #3 你玩股票么?玩的话就接触了 C++的应用场景。
hehheh
2019-12-17 23:01:11 +08:00
@icylogic 点开以后看到了 make_unique,然后看了看公司电脑的 vs 2010,留下了默默的泪水
wbing
2019-12-17 23:13:28 +08:00
用啊,领导强烈要求项目中不要出现裸指针,所以都用这些,不过 unique_ptr 用的相对多点。
tianshilei1992
2019-12-18 06:46:39 +08:00
为啥大家都说用 unique 比较多😂难道没有那种场景,比如多个 memory object 指向同一个 memory buffer 吗?
yksoft1test
2019-12-18 08:14:49 +08:00
表示自己的项目都是 --std=gnu++98 免除这类东西的烦恼
paoqi2048
2019-12-18 10:33:23 +08:00
大部分情况下 unique_ptr 就够了
ivvei
2019-12-18 10:48:51 +08:00
不多。用的编译器太老,不支持……
everlost
2019-12-18 14:46:51 +08:00
@cyhone 看完了,写得很棒.
iclodqp
2022-11-16 20:05:20 +08:00
unique_ptr 基本能用就用,shared_ptr 必须要用就用。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/629868

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX