Compartir a través de


Error del compilador C3071

El operador 'operador' solamente se puede aplicar a una instancia de una clase ref o a un tipo de valor.

Un operador CLR no se puede usar en un tipo nativo. El operador puede usarse en una clase ref o un struct ref (un tipo de valor), pero no en un tipo nativo como int ni en un alias para un tipo nativo como System::Int32. A estos tipos no se les puede aplicar la conversión boxing desde código C++ para que hagan referencia a la variable nativa y, por tanto, no se puede usar el operador.

Para obtener más información, consulte Operador de referencia de seguimiento (C++/CLI y C++/CX).

Ejemplo

El código siguiente genera el error C3071.

// C3071.cpp
// compile with: /clr
class N {};
ref struct R {};

int main() {
   N n;
   %n;   // C3071

   R r;
   R ^ r2 = %r;   // OK
}