std::shared_ptr
std::shared_ptr,在C 11 中引入,提供一種管理具有共享所有權的動態分配物件的方法。然而,使用 std::shared_ptr
工作範例
考慮以下程式碼片段:
令人驚訝的是,此程式碼輸出:
這表示Test 物件已被正確銷毀,即使它由std::shared_ptr
底層機制
std::shared_ptr 提供類型擦除,將託管物件的類型與實作分開。在內部,它儲存了一個刪除器函數,該函數根據原始物件的類型呼叫適當的析構函數。
當 std::shared_ptr
標準合規性和可靠性
雖然所描述的行為當前有效,但它依賴於實現細節,並且C 標準不保證。這是由於兩個原因:
因此,使用 std::shared_ptr
以上是std::shared_ptr 可以用於在關閉時進行可靠的清理嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!