关注
再好好解释一下:process的形参是shared_ptr<int> ptr,那么把 int
*x传进去是很错误的,因为x是普通指针,不能直接强转为shared_ptr<int>类型,所以"process( x )
"是错误的,但是primer是告诉你这样做是错误的,没说是这样定义好了,然后告诉你下面这行"process( shared_ptr<int>(x) ) ;
"可以通过编译,但是这样的话,这是一个临时对象" shared_ptr<int>(x)
",传进process里后,执行后会销毁,但是引用计数会减1,因为你刚刚开始使用的普通指针,引用计数为0,拷贝后也是1,销毁后就是0,那么int
j=*x;就是一个很危险的行为,如果你使用的上面的shared_ptr<int> p(new
int(1024));那么刚刚开始引用计数就是1了,int i=*p;就是正确的
查看原帖
3 2
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 有转正机会的小厂实习值得去吗? #
1301次浏览 23人参与
# 金三银四,你有感觉到吗 #
685843次浏览 6056人参与
# 你最讨厌面试被问什么 #
2267次浏览 32人参与
# 哪些公司开春招了? #
27537次浏览 184人参与
# 牛友的春节生活 #
29650次浏览 353人参与
# 牛客租房专区 #
155085次浏览 1666人参与
# 如何缓解入职前的焦虑 #
260164次浏览 1461人参与
# 大家每天通勤多久? #
84627次浏览 746人参与
# 牛友们,签完三方你在忙什么? #
137691次浏览 999人参与
# 记录实习开销 #
185664次浏览 881人参与
# 正在实习的你,几点下班 #
298077次浏览 2120人参与
# 不给转正的实习,你还去吗 #
2628265次浏览 22963人参与
# 担心入职之后被发现很菜怎么办 #
282865次浏览 1191人参与
# 机械专业只有考研才有出路吗 #
154947次浏览 952人参与
# 26届的你,投了哪些公司? #
256105次浏览 1685人参与
# 文科生还参加今年的春招吗 #
12783次浏览 98人参与
# 实习简历求拷打 #
146749次浏览 765人参与
# 机械人求职现状 #
33847次浏览 300人参与
# 大疆求职进展汇总 #
674545次浏览 4323人参与
# 最难的技术面是哪家公司? #
66988次浏览 998人参与