【问题标题】:Smart pointers vs Reference智能指针与参考
【发布时间】:2012-08-25 06:03:56
【问题描述】:

我敢打赌,这可能以前被问过,但是由于引用 (int& name) 与搜索者的引用计数相同,所以找不到任何东西。

为什么从来没有提到引用作为智能指针的替代品?它只是针对空情况,还是有别的? 使用它们有什么优点/缺点?

【问题讨论】:

    标签: c++ memory pointers reference smart-pointers


    【解决方案1】:

    我认为您的术语混淆了。引用和术语引用计数并不是真正谈论同一件事。

    引用和智能指针,甚至与此相关的指针都非常不同且不可互换。

    无法重新定位引用。这意味着一旦您有了引用,它就只能引用它最初引用的东西。引用只是一个内存地址。

    另一方面,指针指向内存地址;它可以更改为指向不同的内存地址。

    当有人说智能指针进行引用计数时,他们的意思是智能指针正在计算有多少对象引用了智能指针所指向的内存。这与参考不同。

    希望对你有帮助。

    【讨论】:

    • 我很清楚引用和引用计数是不一样的。是搜索者,比如谷歌和这里的搜索者,他们看不到区别(上下文),而是向我展示了与引用计数和智能指针相关的网站,而不是引用和智能指针
    • 但是,我不知道引用不能被切换/交换或引用其他东西。现在有了这个......很明显为什么它们不替换智能指针。
    猜你喜欢
    • 2015-01-24
    • 2021-08-03
    • 1970-01-01
    • 2021-07-03
    • 2019-05-16
    • 1970-01-01
    • 1970-01-01
    • 2021-07-22
    相关资源
    最近更新 更多