Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Os artigos nesta seção da documentação explicam um subconjunto das mensagens de erro geradas pelo compilador.
Importante
Os compiladores e ferramentas de compilação do Visual Studio podem reportar muitos tipos de erros e avisos. Depois que um erro ou aviso é encontrado, as ferramentas de compilação podem 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 podem não se aplicar ao seu projeto. Quando você corrige problemas em seu projeto, sempre comece com o primeiro erro ou aviso relatado e recrie com frequência. Uma correção pode resolver vários erros subsequentes.
Para obter ajuda numa mensagem de diagnóstico específica em Visual Studio, selecione-a na janela Output e pressione a tecla F1. O Visual Studio abre a página de documentação para esse erro, caso exista. 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 o índice nesta página.
Note
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 disponíveis. Se você chegou a esta página e acha que a mensagem de erro ou aviso precisa de explicações adicionais, informe-nos usando os botões de feedback nesta página. Se achar que o erro ou aviso está errado, ou se encontrou outro problema com o conjunto de ferramentas, reporte um problema de produto no site Developer Community. Você também pode enviar comentários e inserir bugs dentro do IDE. No Visual Studio, vá à barra de menu e escolha Ajuda > Enviar Feedback > Reportar um Problema, ou submeter uma sugestão usando Ajuda > Enviar Feedback > Sugira uma funcionalidade. Alguns tópicos de erros do compilador que não são emitidos pelo compilador foram criados e agora redirecionam para esta página.
Você pode encontrar assistência adicional para erros e avisos em fóruns do Microsoft Q&A C++. Ou, procure o número de erro ou aviso no site Visual Studio C++ Developer Community. Você também pode pesquisar Stack Overflow para encontrar soluções.
Para obter links para ajuda adicional e recursos da comunidade, consulte Ajuda do Visual C++ eComunidade.
Mensagens de erro
| Erro | Message |
|---|---|
| Erro do compilador C2001 | quebra de linha no literal de cadeia de caracteres |
| Erro do compilador C2002 | era esperada uma literal de cadeia de caracteres comum |
| Erro do compilador C2003 | 'ID definido' esperado |
| Erro do compilador C2004 | esperado 'definido(id)' |
| Erro do compilador C2005 | #line esperava um número de linha, encontrei 'token' |
| Erro do compilador C2006 | 'diretiva': era esperado "FILENAME" ou <FILENAME> |
| Erro do compilador C2007 | #define sintaxe |
| Erro do compilador C2008 | 'carácter': inesperado na definição macro |
| Erro do compilador C2009 | Não é possível reutilizar o nome do parâmetro da macro 'identificador' |
| Erro do compilador C2010 | 'caráter': inesperado na lista de parâmetros macro formais |
| Erro do compilador C2011 | 'identificador': 'tipo' redefinição de tipo |
| Erro do compilador C2012 | Nome em falta após '<' |
| Erro do compilador C2013 | esperava um 'token' |
| Erro do compilador C2014 | O comando pré-processador deve ser iniciado como o primeiro espaço em branco |
| Erro do compilador C2015 | Demasiados personagens em constante |
| Erro do compilador C2016 | C exige que uma estrutura ou união tenha pelo menos um membro |
| Erro do compilador C2017 | Sequência de fuga desconhecida |
| Erro do compilador C2018 | o carácter 'U+valor' não é permitido aqui |
| Erro do compilador C2019 | esperava-se uma diretiva de pré-processador, mas foi encontrado 'carácter' |
| Erro do compilador C2020 | 'membro': 'classe' redefinição de membro |
| Erro do compilador C2021 | valor expoente esperado, não 'carácter' |
| Erro do compilador C2022 | 'número': demasiado grande para o carácter |
| Erro do compilador C2023 | 'identificador': Alinhamento (valor-1) diferente da declaração anterior (valor-2) |
| Erro do compilador C2024 | O atributo 'alignas' aplica-se apenas a variáveis, membros de dados e tipos de etiquetas |
| Erro do compilador C2025 | ficheiro de interface binário inválido ou corrompido: 'nome do ficheiro' |
| Erro do compilador C2026 | cadeia demasiado longa, caracteres finais truncados |
| Erro do compilador C2027 | Uso do tipo indefinido 'tipo' |
| Erro do compilador C2028 | O membro de struct/union tem de estar dentro de uma struct/union |
| Erro do compilador C2029 | (Obsoleto) à esquerda de 'token' especifica uma classe/estrutura/interface indefinida 'identifier' |
| Erro do compilador C2030 | Um destrutor com acessibilidade 'privada protegida' não pode ser membro de uma classe declarada 'selada' |
| Erro do compilador C2031 | não é permitido um destrutor virtual com acessibilidade 'accessibility' para este tipo |
| Erro do compilador C2032 | 'identificador': a função não pode ser membro da estrutura/união 'tipo' |
| Erro do compilador C2033 | 'identificador': o campo de bits não pode ter indireção |
| Erro do compilador C2034 | 'identificador': tipo de campo de bits demasiado pequeno para o número de bits |
| Erro do compilador C2035 | Um destruidor não virtual com acessibilidade de 'acessibilidade' não é permitido para este tipo |
| Erro do compilador C2036 | «Identificador»: tamanho desconhecido |
| Erro do compilador C2037 | à esquerda de 'operator' especifica uma struct/union 'type' indefinida |
| Erro do compilador C2038 | o namespace std não pode ser inline |
| Erro do compilador C2039 | 'identifier1': não é membro do 'identifier2' |
| Erro do compilador C2040 | 'operador': 'identificador1' difere de 'identificador2' nos níveis de indireção |
| Erro do compilador C2041 | Dígito ilegal 'carácter' para a base 'número' |
| Erro do compilador C2042 | as palavras-chave signed e unsigned são mutuamente exclusivas |
| Erro do compilador C2043 | instrução break fora de um ciclo ou instrução switch |
| Erro do compilador C2044 | Continuação ilegal |
| Erro do compilador C2045 | 'identificador': rótulo redefinido |
| Erro do compilador C2046 | Caso ilegal |
| Erro do compilador C2047 | Incumprimento ilegal |
| Erro do compilador C2048 | mais de uma predefinição |
| Erro do compilador C2049 | 'namespace-name': namespace não-inline não pode ser reaberto como inline |
| Erro do compilador C2050 | expressão switch não é de tipo integral |
| Erro do compilador C2051 | Expressão do caso não constante |
| Erro do compilador C2052 | 'tipo': tipo ilegal para expressão de caso |
| Erro do compilador C2053 | 'identificador': discrepância larga de cadeias |
| Erro do compilador C2054 | esperava-se que '(' seguisse 'identificador' |
| Erro do compilador C2055 | lista formal de parâmetros esperados, não uma lista de tipos |
| Erro do compilador C2056 | Expressão ilegal |
| Erro do compilador C2057 | expressão constante esperada |
| Erro do compilador C2058 | expressão constante não é integral |
| Erro do compilador C2059 | erro de sintaxe: 'token' |
| Erro do compilador C2060 | erro de sintaxe: fim do ficheiro encontrado |
| Erro do compilador C2061 | Erro de sintaxe: identificador 'identificador' |
| Erro do compilador C2062 | tipo 'type' inesperado |
| Erro do compilador C2063 | 'identificador': não uma função |
| Erro do compilador C2064 | A expressão não corresponde a uma função que aceita number argumentos |
| Erro do compilador C2065 | 'identificador': identificador não declarado |
| Erro do compilador C2066 | O tipo de cast to function é ilegal |
| Erro do compilador C2067 | A conversão para o tipo de matriz é ilegal |
| Erro do compilador C2068 | uso ilegal de função sobrecarregada. Lista de argumentos em falta? |
| Erro do compilador C2069 | Do termo 'vazio' para não-'vazio' |
| Erro do compilador C2070 | 'tipo': tamanho ilegal do operando |
| Erro do compilador C2071 | 'identificador': classe de armazenamento ilegal |
| Erro do compilador C2072 | 'identificador': inicialização de uma função |
| Erro do compilador C2073 | (Obsoleto) 'identificador': os elementos de um array parcialmente inicializado devem ter um construtor padrão |
| Erro do compilador C2074 | 'identificador': a inicialização de 'tipo' requer uma lista de inicialização delimitada por chavetas |
| Erro do compilador C2075 | 'identificador': a inicialização requer uma lista de inicializadores com chaves |
| Erro do compilador C2076 | Uma lista de inicializadores encerrada em colchetes não pode ser usada numa nova expressão cujo tipo contém 'tipo' |
| Erro do compilador C2077 | inicializador de campo não escalar 'identificador' |
| Erro do compilador C2078 | Inicializadores a mais |
| Erro do compilador C2079 | 'identificador' utiliza a struct/classe/união indefinida 'tipo' |
| Erro do compilador C2080 | 'identificador': o tipo para 'tipo' só pode ser deduzido a partir de uma única expressão inicializadora |
| Erro do compilador C2081 | 'identificador': nome na lista formal de parâmetros ilegal |
| Erro do compilador C2082 | Redefinição do parâmetro formal 'identificador' |
| Erro do compilador C2083 | Comparação estrutura/sindicato ilegal |
| Erro do compilador C2084 | a função 'identificador' já tem um corpo |
| Erro do compilador C2085 | 'identificador': não está na lista formal de parâmetros |
| Erro do compilador C2086 | 'identificador': redefinição |
| Erro do compilador C2087 | 'identificador': subscrito em falta |
| Erro do compilador C2088 | Operador incorporado 'operador' não pode ser aplicado a um operando do tipo 'Classe Type' |
| Erro do compilador C2089 | 'identificador': 'tipo' demasiado grande |
| Erro do compilador C2090 | função retorna matriz |
| Erro do compilador C2091 | a função retorna uma função |
| Erro do compilador C2092 | O tipo de elemento do array 'identificador' não pode ser função ou classe abstrata |
| Erro do compilador C2093 | 'identificador1': não pode ser inicializado usando o endereço da variável automática 'identificador2' |
| Erro do compilador C2094 | O rótulo 'identificador' não estava definido |
| Erro do compilador C2095 | 'função': o argumento efetivo tem o tipo 'void': parâmetro número |
| Erro do compilador C2096 | 'identificador': um membro de dados não pode ser inicializado com um inicializador entre parênteses |
| Erro do compilador C2097 | Inicialização ilegal |
| Erro do compilador C2098 | token inesperado após o 'identificador' do membro de dados |
| Erro do compilador C2099 | O inicializador não é uma constante |
Consulte também
Erros e avisos do compilador C/C++ e das ferramentas de compilação
Erros do compilador C2001 - C3999, C7000 - C7999