Erros do compilador C2200 a C2299
Os artigos nesta seção da documentação explicam um subconjunto das mensagens de erro geradas pelo compilador.
Importante
Os compiladores e ferramentas de build do Visual Studio podem relatar muitos tipos de erros e avisos. Depois que um erro ou aviso for encontrado, as ferramentas de build poderão fazer suposições sobre a intenção do código e tentar continuar, para que mais problemas possam ser relatados ao mesmo tempo. Se as ferramentas fizerem a suposição errada, erros ou avisos posteriores poderão não se aplicar ao seu projeto. Quando você corrige problemas em seu projeto, sempre comece com o primeiro erro ou aviso relatado e recompile com frequência. Uma correção pode fazer com que muitos erros subsequentes desapareçam.
Para obter ajuda em uma mensagem de diagnóstico específica no Visual Studio, selecione-a na janela Saída e pressione a tecla F1. O Visual Studio abre a página de documentação desse erro, se houver uma. Você também pode usar a ferramenta de pesquisa na parte superior da página para encontrar artigos sobre erros ou avisos específicos. Ou navegue pela lista de erros e avisos por ferramenta e digite no sumário nesta página.
Observação
Nem todos os erros ou avisos do Visual Studio estão documentados. Em muitos casos, a mensagem de diagnóstico fornece todas as informações que estão disponíveis. Se você chegou a esta página ao usar F1 e acha que a mensagem de erro ou aviso precisa de explicações adicionais, informe-nos. Você pode usar os botões de comentários nesta página para registrar um problema de documentação no GitHub. Se você achar que o erro ou o aviso está errado ou encontrou outro problema com o conjunto de ferramentas, relate um problema de produto no site da Developer Community. Você também pode enviar comentários e inserir bugs no IDE. No Visual Studio, vá para a barra de menus e escolha Ajuda > Enviar Comentários > Relatar um Problema ou envie uma sugestão usando Ajuda > Enviar Comentários > Enviar uma Sugestão. Foram criados alguns tópicos de erro do compilador que não são emitidos pelo compilador e agora redirecionam para esta página.
Você pode encontrar assistência adicional para erros e avisos nos fóruns Perguntas e respostas do Microsoft Learn. Alternativamente, pesquise o número do erro ou aviso no site da Developer Community do Visual Studio C++. Você também pode pesquisar o Stack Overflow para encontrar soluções.
Para obter links para ajuda adicional e recursos da comunidade, confira Ajuda e Comunidade do Visual C++.
Mensagens de erro
Erro | Mensagem |
---|---|
Erro do compilador C2200 | 'função': a função já foi definida |
Erro do compilador C2201 | 'identificador': precisa ter vínculo externo para poder ser exportado/importado |
Erro do compilador C2202 | 'função': nem todos os caminhos de controle retornam um valor |
Erro do compilador C2203 | O operador delete não pode especificar limites para uma matriz |
Erro do compilador C2204 | 'tipo': definição de tipo encontrada dentro dos parênteses |
Erro do compilador C2205 | 'identificador': não é possível inicializar variáveis extern com escopo de bloco |
Erro do compilador C2206 | 'função': typedef não pode ser usado para definição de funções |
Erro do compilador C2207 | 'membro':um membro de um modelo de classe não é capaz de adquirir um tipo de função |
Erro do compilador C2208 | 'tipo': nenhum membro definido usando este tipo |
Erro do compilador C2209 | 'identificador': não é possível usar aliases em declarações de construtor |
Erro do compilador C2210 | 'identificador': expansões do pacote não podem ser usadas como argumentos para parâmetros fora do pacote nos modelos de alias |
Erro do compilador C2211 | Um destruidor não virtual em uma classe ref derivado de uma classe ref com um destruidor público também deve ser público |
Erro do compilador C2212 | 'identificador': __based não disponível a ponteiros para funções |
Erro do compilador C2213 | 'identificador': argumento ilegal para __based |
Erro do compilador C2214 | ponteiros com base em 'void' requerem o uso de:> |
Erro do compilador C2215 | 'palavra-chave' não pode ser usado com '/arch:SSE' |
Erro do compilador C2216 | 'palavra-chave1': não pode ser usado com 'palavra-chave2' |
Erro do compilador C2217 | 'atributo1': exige 'atributo2' |
Erro do compilador C2218 | 'tipo_de_chamada' não pode ser usado com '/arch:IA32' |
Erro do compilador C2219 | erro de sintaxe: o qualificador de tipo deve estar depois de '*' |
Erro do compilador C2220 | aviso tratado como erro – nenhum arquivo 'tipo_de_arquivo' gerado |
Erro do compilador C2221 | Obsoleto. |
Erro do compilador C2222 | tipo 'tipo' inesperado: era esperado um membro ou classe base |
Erro do compilador C2223 | esquerda de '->identificador' deve apontar para struct/união |
Erro do compilador C2224 | à esquerda de '.identificador' deve ter tipo struct/união |
Erro do compilador C2225 | Obsoleto. |
Erro do compilador C2226 | erro de sintaxe: tipo 'tipo' inesperado |
Erro do compilador C2227 | esquerda de '->identificador' deve apontar para classe/struct/união/tipo genérico |
Erro do compilador C2228 | à esquerda de '.identificador', precisa ter classe/struct/união |
Erro do compilador C2229 | 'tipo' de classe/struct/união tem uma matriz de dimensão zero ilegal |
Erro do compilador C2230 | não foi possível encontrar o módulo 'nome' |
Erro do compilador C2231 | '. identificador': operando à esquerda aponta para 'class/struct/union', use '->' |
Erro do compilador C2232 | '->identificador': operando à esquerda tem o tipo 'class/struct/union', use '.' |
Erro do compilador C2233 | 'identificador': matrizes de objetos contendo matrizes de dimensão zero são inválidas |
Erro do compilador C2234 | identificador': matrizes de referência são inválidas |
Erro do compilador C2235 | Obsoleto. |
Erro do compilador C2236 | token 'token' inesperado. Esqueceu um ';'? |
Erro do compilador C2237 | declaração de vários módulos |
Erro do compilador C2238 | token(s) inesperado(s) precedendo 'token' |
Erro do compilador C2239 | 'função': tentando excluir uma função __declspec(dllexport) |
Erro do compilador C2240 | Obsoleto. |
Erro do compilador C2241 | 'identificador': o acesso a membro é restrito |
Erro do compilador C2242 | nome de typedef não pode vir após classe/struct/união |
Erro do compilador C2243 | 'tipo_de_conversão': a conversão de 'tipo1' para 'tipo2' existe, mas é inacessível |
Erro do compilador C2244 | 'identificador': não é possível corresponder a definição de função a uma declaração existente |
Erro do compilador C2245 | função membro inexistente 'função' especificada como amiga (a assinatura da função membro não corresponde a nenhuma sobrecarga) |
Erro do compilador C2246 | 'identificador': membro de dados estático inválido em classe definida localmente |
Erro do compilador C2247 | 'identificador' não acessível porque 'classe1' usa 'especificador' para herdar de 'classe2' |
Erro do compilador C2248 | “identificador”: não é possível acessar acessibilidade membro declarado na classe “classe” |
Erro do compilador C2249 | “identificador”: nenhum caminho acessível para acessibilidade membro declarado na base virtual “classe” |
Erro do compilador C2250 | 'identificador': herança ambígua de 'classe::membro' |
Erro do compilador C2251 | O namespace 'namespace' não tem um membro 'identificador' – Você quis dizer 'membro'? |
Erro do compilador C2252 | uma instanciação explícita de um modelo só pode ocorrer em escopo de namespace |
Erro do compilador C2253 | 'função': especificador pure ou especificador de substituição abstract permitido apenas em função virtual |
Erro do compilador C2254 | 'identificador': especificador pure ou especificador de substituição abstract não permitido em função amiga |
Erro do compilador C2255 | 'elemento': não permitido fora de uma definição de classe |
Erro do compilador C2256 | uso ilegal do especificador friend em 'função' |
Erro do compilador C2257 | 'especificador': especificador não permitido em tipo de retorno à direita |
Erro do compilador C2258 | sintaxe pure inválida, precisa ser '= 0' |
Erro do compilador C2259 | 'classe': não é possível criar uma instância de classe abstrata |
Erro do compilador C2260 | 'especificador': especificador de assembly amigável InternalsVisibleToAttribute inválido |
Erro do compilador C2261 | 'cadeia de caracteres': a referência de assembly é inválida e não pode ser resolvida |
Erro do compilador C2262 | 'especificador': declarações InternalsVisibleTo não podem possuir uma versão, uma cultura, ou uma arquitetura de processador especificada |
Erro do compilador C2263 | Obsoleto. |
Erro do compilador C2264 | 'função': erro na definição ou na declaração da função; função não chamada |
Erro do compilador C2265 | Obsoleto. |
Erro do compilador C2266 | 'identificador': referência a uma matriz de limite não constante é inválida |
Erro do compilador C2267 | 'função': funções estáticas com escopo de bloco são inválidas |
Erro do compilador C2268 | 'função': é um auxiliar de biblioteca predefinido do compilador. Não há suporte para os auxiliares de biblioteca com /GL; compilar o arquivo de objeto 'nome_de_arquivo' sem /GL. |
Erro do compilador C2269 | não é possível criar um ponteiro ou uma referência a um tipo de função qualificado (requer um ponteiro para membro) |
Erro do compilador C2270 | 'função': modificadores não permitidos em funções não membro |
Erro do compilador C2271 | 'função': new/delete não pode ter modificadores de lista formais |
Erro do compilador C2272 | 'função': modificadores não permitidos em funções de membro estático |
Erro do compilador C2273 | 'tipo': inválido como lado direito do operador '->' |
Erro do compilador C2274 | 'tipo': inválido como lado direito do operador '.' |
Erro do compilador C2275 | 'tipo': uso inválido deste tipo como uma expressão |
Erro do compilador C2276 | 'operador': operação ilegal na expressão de função membro associada |
Erro do compilador C2277 | 'função': não é possível receber o endereço desta função membro |
Erro do compilador C2278 | Obsoleto. |
Erro do compilador C2279 | especificação de exceção não pode aparecer em uma declaração de typedef |
Erro do compilador C2280 | 'classe::função': tentativa de fazer referência a uma função excluída |
Erro do compilador C2281 | 'classe::função': uma função só pode ser excluída na primeira declaração |
Erro do compilador C2282 | 'função1' não pode substituir 'função2' |
Erro do compilador C2283 | 'identificador': especificador pure ou especificador de substituição abstract não permitido em um(a) struct/classe sem nome |
Erro do compilador C2284 | 'função': argumento inválido para função intrínseca, parâmetro número |
Erro do compilador C2285 | representação de ponteiros para membros já foi determinada – pragma ignorado |
Erro do compilador C2286 | ponteiros para membros da representação de 'identificador' já estão definidos como 'herança' – declaração ignorada |
Erro do compilador C2287 | 'identificador': representação de herança: 'herança' é menos geral que a 'herança' necessária |
Erro do compilador C2288 | Obsoleto. |
Erro do compilador C2289 | o mesmo qualificador de tipo foi usado mais de uma vez |
Erro do compilador C2290 | Sintaxe C++ 'asm' ignorada. Use __asm. |
Erro do compilador C2291 | Um namespace anônimo não pode ser exportado. |
Erro do compilador C2292 | 'identificador': melhor representação de herança de caso: herança1' declarada, mas 'herança2' necessária |
Erro do compilador C2293 | 'identificador': é inválido ter uma variável membro como um especificador __based |
Erro do compilador C2294 | não é possível exportar o símbolo 'identificador' porque ele tem vínculo interno |
Erro do compilador C2295 | 'identificador' de escape: é ilegal na definição de macro |
Erro do compilador C2296 | 'operador': inválido, operando à esquerda possui tipo 'tipo' |
Erro do compilador C2297 | 'operador': inválido, operando à direita possui tipo 'tipo' |
Erro do compilador C2298 | ponteiro de chamada para limite ausente para função membro |
Erro do compilador C2299 | 'função': alteração de comportamento: uma especialização explícita não pode ser um construtor de cópia ou operador de atribuição de cópia |
Confira também
Compilador C/C++ e erros e avisos das ferramentas de build
Erros do compilador C2001 - C3999, C7000 - C7999