C2061 de erro do compilador
Erro de sintaxe: identificador 'identificador'
O compilador encontrado um identificador onde ele não era esperado.Certifique-se de que identifier é declarado antes de usá-lo.
Um inicializador pode ser delimitada por parênteses.Para evitar esse problema, coloque o Declarador entre parênteses ou torná-lo um typedef.
Este erro pode ser causado também quando o compilador detecta uma expressão como um argumento de modelo de classe; Use typename para informar ao compilador é um tipo.
O exemplo a seguir 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 para typeid (Extensões de Componentes C++):
// 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
}