operator delete (<new>)
A função chamada por uma expressão delete desalocar o armazenamento para os objetos.
void operator delete(
void* _Ptr
) throw( );
void operator delete(
void *,
void *
) throw( );
void operator delete(
void* _Ptr,
const std::nothrow_t&
) throw( );
Parâmetros
- _Ptr
O ponteiro cujo valor deve ser desenvolvidos inválido pela exclusão.
Comentários
A primeira função é chamada por uma expressão delete para tornar o valor de _Ptr inválido.O programa pode definir uma função com essa assinatura de função que substitui a versão padrão definido pela biblioteca do C++ padrão.O comportamento é necessário aceitar um valor de _Ptr que é nulo ou que é retornado por uma chamada anterior a operador novosize_t().
o comportamento padrão para um valor nulo de _Ptr é não fazer nada.Qualquer outro valor de _Ptr deve ser um anteriormente valor retornado por uma chamada como descrito anteriormente.O comportamento padrão para um valor para nonnull de _Ptr é recuperar o armazenamento atribuído pela chamada anterior.Não é especificado em que condições parte ou todo tal armazenamento recuperado é atribuído por uma chamada a seguir operator new(size_t), ou qualquer de calloc(),size_tde malloc(size_t), ou de realloc(void*, size_t).
A segunda função é chamada por uma expressão de exclusão de posicionamento que corresponde a uma nova expressão do formulário newstd::size_t().Não fará nada.
A terceira função é chamada por uma expressão de exclusão de posicionamento que corresponde a uma nova expressão do formulário new(std::size_t, conststd::nothrow_t&).O programa pode definir uma função com essa assinatura de função que substitui a versão padrão definido pela biblioteca do C++ padrão.O comportamento é necessário aceitar um valor de _Ptr que é nulo ou que é retornado por uma chamada anterior a operator newsize_t().O comportamento padrão é avaliar delete_Ptr().
Exemplo
operador novo consulte para um exemplo que usa operator delete.
Requisitos
Cabeçalho: <new>
namespace: STD