Compartilhar via


Erro do compilador C3633

não pode definir 'member' como um membro 'type' gerenciado

Os membros de dados da classe de referência CLR não podem ser de um tipo C++ não POD. Você só pode criar uma instância de um tipo nativo pod em um tipo CLR. Por exemplo, um tipo POD não pode conter um construtor de cópia nem um operador de atribuição.

Exemplo

O exemplo a seguir gera o erro 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; }
};