关注
再好好解释一下: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
相关推荐
05-08 14:55
深圳技术大学 前端工程师 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 26届春招投递记录 #
19254次浏览 139人参与
# 米哈游笔试 #
708680次浏览 1268人参与
# 我的求职总结 #
490513次浏览 6898人参与
# 你遇到过哪些神仙同事 #
145029次浏览 768人参与
# 27届实习投递记录 #
89890次浏览 949人参与
# 产品实习,你更倾向大公司or小公司 #
230255次浏览 2150人参与
# 金融银行求职进展汇总 #
363284次浏览 1979人参与
# 美团秋招笔试 #
219376次浏览 1198人参与
# 25届网易互娱暑实进度 #
110375次浏览 805人参与
# 我是XXX,请攻击我最薄弱的地方 #
98680次浏览 650人参与
# 拼多多工作体验 #
63373次浏览 441人参与
# 选择和努力,哪个更重要? #
215949次浏览 1586人参与
# 国庆前的秋招小结 #
301924次浏览 1755人参与
# 宁德时代求职进展汇总 #
188555次浏览 710人参与
# Vibe Coding 会干掉初级岗位吗? #
52473次浏览 337人参与
# 实习转正进行时 #
198232次浏览 1172人参与
# 职场吐槽大会 #
361957次浏览 2308人参与
# HR最不可信的一句话是__ #
37181次浏览 186人参与
# 牛油的搬砖plog #
208307次浏览 1338人参与
# 工作中哪个瞬间让你想离职 #
137258次浏览 810人参与
