编译器错误 C3189

“typeid<type abstract declarator>”: 不再支持此语法,请改用 ::typeid

使用了过时的 typeid 形式,请使用新形式。

此错误在 Visual Studio 2022 及更高版本中已过时。

以下示例生成 C3189:

// C3189.cpp
// compile with: /clr
int main() {
   System::Type^ t  = typeid<System::Object>;   // C3189
   System::Type^ t2  = System::Object::typeid;   // OK
}