次の方法で共有


コンパイラ エラー C2842

'class' : マネージド型または WinRT 型はそれ自体の 'operator new' または 'operator delete' を定義できません

解説

独自の operator new または operator delete を定義して、ネイティブ ヒープでのメモリの割り当てを管理できます。 ただし、これらの演算子はマネージド ヒープでのみ割り当てられるため、参照クラスでは定義できません。

詳細については、「ユーザー定義の演算子 (C++/CLI)」を参照してください。

次の例では C2842 が生成されます。

// C2842.cpp
// compile with: /clr /c
ref class G {
   void* operator new( size_t nSize );   // C2842
};