Поделиться через


Ошибка компилятора C3181

"type" : недопустимый операнд для оператора

Недопустимый параметр был передан оператору typeid . Параметр должен быть управляемым типом.

Обратите внимание, что компилятор использует псевдонимы для собственных типов, которые сопоставляют с типами в среде CLR.

Следующий пример приводит к возникновению ошибки C3181:

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

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