我们的许多开发人员不明白从 weak_ptr
创建 shared_ptr
与锁定有什么关系。在他们看来,术语“锁”首先与互斥锁相关联。
例如,它可能被称为use
或 safeguard
或 lease
或 promote
...但是嘿,它不是,学习标准是我们的责任。
但对他们来说,这是一个非常糟糕的问题,以至于必须重命名复制该习语的另一个类,导致重命名后有大量代码行。现在我们为了一点直观性而牺牲了与标准的一致性。
有谁知道名称 lock()
是如何选择的?
最佳答案
它将共享对象锁定在内存中,并防止它被删除。
它与锁定互斥锁或类似的东西无关。
关于c++ - 名称 `weak_ptr::lock()` 的原因是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34759746/