gpt4 book ai didi

c++ - 为什么不推荐使用 auto_ptr?

转载 作者:IT老高 更新时间:2023-10-28 12:01:01 29 4
gpt4 key购买 nike

我听说 auto_ptr 在 C++11 中已被弃用。这是什么原因?

我也想知道auto_ptrshared_ptr的区别。

最佳答案

auto_ptr 的直接替换(或者最接近的东西)是unique_ptr .就“问题”而言,它非常简单:auto_ptr 在分配所有权时转移所有权。 unique_ptr 也转移所有权,但由于移动语义的编码和右值引用的魔力,它可以更自然地做到这一点。它也更好地“适合”标准库的其余部分(尽管公平地说,其中一些要归功于库的其余部分进行了更改以适应移动语义,而不是总是需要复制)。

名称的更改也是(IMO)一个受欢迎的 - auto_ptr 并没有真正告诉您它试图自动化的内容,而 unique_ptr 是一个对所提供内容的相当合理(如果简洁)的描述。

关于c++ - 为什么不推荐使用 auto_ptr?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3697686/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com