次の方法で共有


コンパイラ エラー C3633

' member ' はマネージド ' type ' のメンバーとして定義できません

CLR 参照クラスのデータメンバーは非 POD C++ 型にできません。 CLR 型では、POD ネイティブ型のみをインスタンス化できます。 たとえば、POD 型にコピー コンストラクターまたは代入演算子を含めることはできません。

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

// C3633.cpp
// compile with: /clr /c
#pragma warning( disable : 4368 )

class A1 {
public:
   A1() { II = 0; }
   int II;
};

ref class B {
public:
   A1 a1;   // C3633
   A1 * a2;   // OK
   B() : a2( new A1 ) {}
    ~B() { delete a2; }
};