Compartir a través de


Error del compilador C2847

no se puede aplicar sizeof al tipo administrado o WinRT 'class'

El operador sizeof obtiene el valor de un objeto en tiempo de compilación. El tamaño de un tipo de valor, una interfaz o una clase administrada o WinRT es dinámico y no puede conocerse en tiempo de compilación.

El ejemplo siguiente genera el error C2847:

// C2847.cpp
// compile with: /clr
ref class A {};

int main() {
   A ^ xA = gcnew A;
   sizeof(*xA);   // C2847 cannot use sizeof on managed object
}