std::weak_ptr的_Get方法做什么,什么时候应该使用它



我正在阅读智能指针,特别是弱指针。我理解弱指针没有类似于共享指针的get()方法,因为它不确定弱指针是否指向任何东西。然后我发现intelligent建议使用_Get()方法。

std::weak_ptr的_Get()方法到底是做什么的,什么时候应该使用它?

从不。为实现保留下划线大写字母名称。作为用户,你永远不应该使用它们。此外,它没有在weak_ptr的接口中列出,因此基于它编写的代码将不具有可移植性。

至于它的作用:它可能是一个辅助函数。由于它是为的任何用途的实现保留的,因此深入研究它几乎没有意义,因为它允许在较小的版本之间更改(或消失)。

N4140§17.6.4.3.2 [global.names]/1

某些名称集和函数签名总是保留给实现:—每个名称包含一个双下划线__或以下划线开头,后跟大写字母(2.12)保留给实现以供任何使用。

相关内容

  • 没有找到相关文章

最新更新