Compilerfehler C2323
'identifier': Nicht-Memberoperator new
oder delete
-funktionen dürfen nicht deklariert oder in einem anderen Namespace als dem globalen Namespace deklariert static
werden.
Die new
Operatoren und delete
Überladungen müssen nicht statisch sein, im globalen Namespace oder als Klassenmmber definiert sein.
Im Folgenden wird C2323 generiert:
// 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
}