operator delete (<new>)
刪除運算式中呼叫函式解除配置陣列儲存物件(Storage Object)。
void operator delete[](
void* _Ptr
) throw( );
void operator delete[](
void *,
void *
) throw( );
void operator delete[](
void* _Ptr,
const std::nothrow_t&
) throw( );
參數
- _Ptr
其值是要由刪除轉譯無效的指標。
備註
第一個函式。 delete[] 運算式呼叫的可讓 _Ptr 的值無效。函式是可取代的,因為程式可以定義與取代Standard C++程式庫中定義的預設版本之這個函式簽章的函式。必要的行為是接受null或之前的呼叫所傳回 new運算子[in]_Ptr 的值(size_t)。_Ptr 的 null 值的預設行為就不是這樣。_Ptr 其他值必須是如同呼叫傳回的目前值。_Ptr 的這類非 null 值的預設行為是回收之前的呼叫所配置的儲存區。它在何種情況下是未指定的不同或任何這類之儲存區由後續的配置給 new運算子(size_t),或是任何 calloc(size_t), malloc(size_t),或 realloc(void*, size_t)。
第二個函式會將 delete[] 運算式會以表單對應 new[](std::size_t)的 new[] 運算式。它不會有任何作用。
第三個函式以定位刪除運算式會以表單對應 new[](std::size_t, const std::nothrow_t&)的 new[] 運算式。程式可以定義與取代 Standard C++ 程式庫中定義的預設版本之這個函式簽章的函式。必要的行為是接受null或之前的呼叫所傳回給運算子 new[]_Ptr 的值(size_t)。預設行為是評估 delete[](_Ptr)。
範例
請參閱 new運算子[in] 搭配使用 **operator delete[]**的範例。
需求
標題: <new>
命名空間: std