unique_ptr::reset
取得指標參數的擁有權,然後刪除原始的已儲存指標。 如果新的指標是與原始的已儲存指標相同,reset 會刪除指標,並將已儲存的指標設定為 nullptr。
void reset(pointer ptr = pointer());
void reset(nullptr_t ptr);
參數
參數 |
描述 |
---|---|
ptr |
欲取得擁有權之資源的指標。 |
備註
請使用 reset 來將 unique_ptr 擁有的已儲存指標變更為 ptr,然後再刪除原始儲存的指標。 如果 unique_ptr 不是空白,reset 會叫用 get_deleter 在原始已儲存指標上所傳回的刪除者函式。
因為 reset 會先儲存新指標 ptr,然後再刪除原始儲存的指標,所以 reset 有可能立即刪除 ptr (如果它與原始儲存的指標相同的話)。
需求
標頭: <memory>
命名空間: std