new*_*mer 9 c++ smart-pointers
我正在尝试学习如何使用智能指针并了解所有权.当我auto_ptr按值传递一个函数时,该函数将获取该指针的独占所有权.因此,当函数完成时,它会删除我传递给它的指针.
但是,当我尝试使用a时,我得到一个编译错误unique_ptr,就好像为unique_ptrs 禁用了复制赋值一样.通过unique_ptr引用传递似乎不会转移所有权,它只是给函数一个引用unique_ptr.
如何auto_ptr将所有权转移到与unique_ptrs 一起使用的功能?我希望得到一个详细教程的链接unique_ptr,因为到目前为止,我所阅读的内容似乎只是谈论auto_ptr或讨论Boost提供的智能指针,似乎忽略了unique_ptr因为shared_ptr它涵盖了它.
| 归档时间: |
|
| 查看次数: |
6725 次 |
| 最近记录: |