컴파일러 오류 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