爲了查看weak_ptr是否指向一個有效的對象,創建一個臨時shared_ptr似乎是一種低效率。我甚至不想訪問該對象。這是因爲我有一個函數從shared_ptr的向量返回一個weak_ptr,並且如果它返回一個空的weak_ptr,那麼這意味着該對象不會以該GUID存在。我是否必須使用weak_ptr.lock()來測試它是否指向一個有效的對象?
所以我只是測試一個對象是否存在。
是否有另一種方法檢查weak_ptr是否爲空而不創建shared_ptr?
爲了查看weak_ptr是否指向一個有效的對象,創建一個臨時shared_ptr似乎是一種低效率。我甚至不想訪問該對象。這是因爲我有一個函數從shared_ptr的向量返回一個weak_ptr,並且如果它返回一個空的weak_ptr,那麼這意味着該對象不會以該GUID存在。我是否必須使用weak_ptr.lock()來測試它是否指向一個有效的對象?
所以我只是測試一個對象是否存在。
是否有另一種方法檢查weak_ptr是否爲空而不創建shared_ptr?
您可以使用lock() – imreal
您是如何獲得弱指針的?這是必須改變的界面。 –
lock()返回一個shared_ptr,這就是我發佈這篇文章的原因。 – EddieV223