Sdílet prostřednictvím


Chyba kompilátoru C3149

'type' : tento typ zde nelze použít bez znaku nejvyšší úrovně.

Poznámky

Deklarace nebyla zadána správně.

Mohli jste například definovat typ CLR v globálním oboru a pokusili jste se vytvořit proměnnou typu jako součást definice. Protože globální proměnné typů CLR nejsou povoleny, kompilátor vygeneruje C3149.

Chcete-li tuto chybu vyřešit, deklarujte proměnné typů CLR uvnitř funkce nebo definice typu.

Examples

Následující příklad generuje 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
}

Následující příklad generuje C3149:

// C3149b.cpp
// compile with: /clr /c
delegate int MyDelegate(const int, int);
void Test1(MyDelegate m) {}   // C3149
void Test2(MyDelegate ^ m) {}   // OK