Erro do compilador C3181

'type': um operand inválido para o operador

Um parâmetro inválido foi passado para o operador typeid . O parâmetro deve ser um tipo gerenciado.

Observe que o compilador usa aliases para tipos nativos que são mapeados para tipos no Common Language Runtime.

O exemplo a seguir gera C3181:

// C3181a.cpp
// compile with: /clr
using namespace System;

int main() {
   Type ^pType1 = interior_ptr<int>::typeid;   // C3181
   Type ^pType2 = int::typeid;   // OK
}