编译器错误 C3149
“type”:此处没有顶级“char”,不能使用此类型
未正确指定声明。
例如,你可能已在全局范围内定义了 CLR 类型,并已尝试在定义时创建了该类型的变量。 因为不允许使用 CLR 类型的全局变量,所以编译器会生成 C3149。
要解决此错误,请在函数或类型定义中声明 CLR 类型的变量。
下面的示例生成 C3149:
// C3149.cpp
// compile with: /clr
using namespace System;
int main() {
// declare an array of value types
array< Int32 ^> IntArray; // C3149
array< Int32>^ IntArray2; // OK
}
下面的示例生成 C3149:
// C3149b.cpp
// compile with: /clr /c
delegate int MyDelegate(const int, int);
void Test1(MyDelegate m) {} // C3149
void Test2(MyDelegate ^ m) {} // OK
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈