独占指针指向动态数组的释放

独占指针存在一个函数`u.release()`

C++ primer 上对函数的功能描述为

所以和`reset`函数使用可以转移指针的使用权

unique_ptr<int> uptr1;
unique_ptr<int> uptr2(new int(3));
uptr1.reset(uptr2.release());
//对release()函数,它应该是返回自己指向的内存地址,然后将自己置为空,并不会销毁自己指向的内存

而在和动态数组使用时,书中描写release()语句会自动调用delete[], 这样看来此处release会销毁动态数组的内存,请问各位对此的理解?

#悬赏#
全部评论
但凡我有你这精神学习,也不至于找不到工作
点赞 回复 分享
发布于 2023-05-11 22:02 江苏
上面的声明是不是有点儿问题
点赞 回复 分享
发布于 2023-05-12 11:47 广东

相关推荐

不愿透露姓名的神秘牛友
11-27 10:28
点赞 评论 收藏
分享
有趣的牛油果开挂了:最近这个阶段收到些杂七杂八的短信是真的烦
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务