Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
'class' : type-class-id redefinido como função membro de 'identifier'
Observações
Você não pode usar uma classe genérica ou de modelo como uma função membro de outra classe.
Esse erro ficou obsoleto no Visual Studio 2022 e em versões posteriores.
Esse erro pode ser causado se as chaves forem correspondidas incorretamente.
Exemplos
O exemplo a seguir gera C2931:
// C2931.cpp
// compile with: /c
template<class T>
struct TC { };
struct MyStruct {
void TC<int>(); // C2931
};
struct TC2 { };
struct MyStruct2 {
void TC2();
};
O erro C2931 também pode ocorrer ao usar genéricos:
// C2931b.cpp
// compile with: /clr /c
generic<class T> ref struct GC {};
struct MyStruct {
void GC<int>(); // C2931
void GC2(); // OK
};