Partilhar via


Erro do Compilador C2061

erro de sintaxe: identificador e a mensagem”

O compilador encontrou um identificador que não se espera. Certifique-se de que identifier é declarada antes que você use.

Um inicializador pode ser incluído por parênteses. Para evitar esse problema, coloque o declarator entre parênteses ou faça-lhe typedef.

Esse erro pode ser causado quando o compilador detectar uma expressão como um argumento de modelo da classe; o uso typename informar ao compilador é.

O seguinte exemplo gera C2061:

// C2061.cpp
// compile with: /c
template < A a >   // C2061
// try the following line instead
// template < typename b >
class c{};

C2061 pode ocorrer se você passar um nome de instância a typeID:

// C2061b.cpp
// compile with: /clr
ref struct G {
   int i;
};

int main() {
   G ^ pG = gcnew G;
   System::Type ^ pType = typeid<pG>;   // C2061
   System::Type ^ pType2 = typeid<G>;   // OK
}