Partilhar via


Erro do compilador C2323

'identificador': operador new ou delete funções não membros não podem ser declarados static ou em um namespace diferente do namespace global.

Os new operadores e delete overload devem ser não estáticos, definidos no namespace global ou como membros da classe.

O seguinte gera C2323:

// C2323.cpp
// compile with: /c
static void* operator new(size_t);   // C2323 since static
static void operator delete(void*);  // C2323 since static

namespace NS
{
    void* operator new(size_t);   // C2323 since not defined in the global namespace
    void operator delete(void*);  // C2323 since not defined in the global namespace
}

Confira também

new e delete operadores