Partilhar via


Erros do compilador C2600 a C2699

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 relatar 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 sobre uma mensagem de diagnóstico específica no 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, se existir. 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.

Observação

Nem todos os erros ou avisos do Visual Studio sã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 você acha que o erro ou aviso está errado, ou encontrou outro problema com o conjunto de ferramentas, relate um problema de produto no site Comunidade de Desenvolvedores. Você também pode enviar comentários e inserir bugs dentro do IDE. No Visual Studio, vá para a barra de menus e escolha Ajuda > Enviar Comentários > Relatar um Problemaou enviar uma sugestão usando Ajuda > Enviar Comentários > Sugerir um recurso. Foram criados alguns tópicos de erro 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 em fóruns do Microsoft Q&A C++. Ou, procure o número de erro ou aviso no Visual Studio C++ Developer Community site. Você também pode pesquisar no Stack Overflow para encontrar soluções.

Para obter links para ajuda adicional e recursos da comunidade, consulte Ajuda e Comunidade do Visual C++.

Mensagens de erro

Erro Mensagem
Erro do compilador C2600 'função': não é possível definir uma função de membro especial gerada pelo compilador (deve ser declarada na classe primeiro)
Erro do compilador C2601 'função': definições locais de função são ilegais
Erro do compilador C2602 'classe::identificador' não é um membro de nenhuma classe base de 'classe'
Erro do compilador C2603 'function': Muitos objetos estáticos de escopo de bloco com construtores/destrutores na função
Erro do compilador C2604 'identificador': Não é possível implementar mais de um método de interface
Erro do compilador C2605 'identificador': este método é reservado dentro de uma classe gerenciada/WinRT
Erro de compilador C2606 'class1': não é possível reimplementar 'membro', pois é herdado da base de tempo de execução 'class2'
Erro do compilador C2607 asserção estática falhou
Erro de compilador C2608 token inválido 'token' na lista de parâmetros de macro
Erro de compilador C2609 falta ')' na lista de parâmetros da macro
Erro do compilador C2610 'classe::membro': não é uma função de membro especial que pode ser padrão
Erro do compilador C2611 'token': ilegal após '~' (identificador esperado)
Erro do compilador C2612 A seguir 'caractere' ilegal na lista de inicializadores base/membro
Erro de compilador C2613 à direita 'caractere' ilegal na lista de classe base
Erro do compilador C2614 'classe': inicialização ilegal de membro: 'identificador' não é uma base ou membro
Erro do compilador C2615 'offsetof' não pode ser aplicado a tipos não pertencentes à classe 'tipo'
Erro de compilador C2616 'conversão': não pode converter implicitamente um não-lvalue 'tipo1' para um 'tipo2' que não é const
Erro de compilador C2617 'função': declaração de retorno inconsistente
Erro do compilador C2618 Designação de Membro Ilegal em offsetof
Erro de compilador C2619 'identificador': um membro de dado estático não é permitido numa estrutura/união anônima
Erro do compilador C2620 Obsoleto.
Erro do compilador C2621 Obsoleto.
Erro do compilador C2622 Obsoleto.
Erro do compilador C2623 Obsoleto.
Erro do compilador C2624 'escopo::tipo': classes locais não podem ser usadas para declarar variáveis 'externas'
Erro do compilador C2625 «identificador»: membro de união ilegal; tipo 'tipo' é tipo de referência
Erro do compilador C2626 'identificador': um membro de dados privados/protegidos não é permitido em uma estrutura/união anônima
Erro de compilador C2627 'função': função de membro não permitida na união anônima
Erro de compilador C2628 'tipo1' seguido de 'tipo2' é ilegal (esqueceu-se de um ';'?)
Erro de compilador C2629 'identificador': uma estrutura/união anônima não pode declarar um tipo aninhado
Erro do compilador C2630 'símbolo' encontrado no que deveria ser uma lista separada por vírgulas
Erro do compilador C2631 'identificador': uma classe ou enum não pode ser definida em um modelo de alias
Erro do compilador C2632 'tipo1' seguido de 'tipo2' é ilegal
Erro do compilador C2633 'identificador': 'inline' é a única classe de armazenamento válida para construtores
Erro do compilador C2634 'classe::membro': ponteiro para membro de referência é ilegal
Erro do compilador C2635 não é possível converter um 'tipo1*' para um 'tipo2*'; a conversão de uma classe base virtual está implícita
Erro do compilador C2636 'identificador': ponteiro para membro de referência é ilegal
Erro de compilador C2637 'identificador': não é possível modificar ponteiros para membros de dados
Erro de compilador C2638 'identificador': modificador ilegal __based em ponteiros de membro
Erro de compilador C2639 O tipo de retorno final 'tipo' do guia de dedução deve ser uma especialização de 'classe template'
Erro do compilador C2640 «declarador abstrato»: modificador __based ilegal em referência
Erro de compilador C2641 não é possível deduzir argumentos de modelo para 'nome do modelo'
Erro do compilador C2642 Duas declarações de guia de dedução para o mesmo modelo de classe não podem ter lista de parâmetros e cabeçalho de modelo equivalentes
Erro de compilador C2643 o guia de dedução deve ser declarado no mesmo âmbito que o modelo de classe correspondente 'nome do modelo'
Erro de compilador C2644 guia de dedução deve ter o mesmo acesso que o modelo de classe correspondente 'nome do modelo'
Erro do compilador C2645 nenhum nome qualificado para ponteiro para um membro (encontrado ':: *')
Erro do compilador C2646 Uma estrutura/união anônima no escopo global ou de namespace deve ser declarada estática
Erro de compilador C2647 'operador': não é possível desreferenciar um 'tipo1' em um 'tipo2'
Erro de compilador C2648 'identificador': para usar um membro como parâmetro padrão, é necessário que seja um membro estático.
Erro do compilador C2649 'identificador': não é uma 'classe/estrutura/união'
Erro do compilador C2650 'operador': não pode ser uma função virtual
Erro do compilador C2651 'tipo': à esquerda de '::' deve ser uma classe, struct ou union
Erro de compilador C2652 'identificador': construtor de cópia ilegal: o primeiro parâmetro não deve ser um tipo ''
Erro de compilador C2653 'identificador': não é um nome de classe ou namespace
Erro do compilador C2654 'identificador': tentativa de acessar membro fora de uma função de membro
Erro do compilador C2655 « identificador»: definição ou redeclaração ilegal no âmbito de aplicação atual
Erro do compilador C2656 'função': função não é permitida como um campo de bits
Erro do compilador C2657 'classe::*' encontrada no início de uma instrução (esqueceste-te de especificar um tipo?)
Erro de compilador C2658 'identificador': redefinição em struct/union anónimo
Erro do compilador C2659 'operador': função como operando esquerdo
Erro do compilador C2660 'função': função não aceita número argumentos
Erro do compilador C2661 'função': nenhuma função sobrecarregada leva número argumentos
Erro do compilador C2662 'função': não é possível converter 'este' ponteiro de 'type1' para 'type2'
Erro de compilador C2663 'função': nenhuma função sobrecarregada tem conversão válida para o ponteiro 'this'
Erro de compilador C2664 'função': não é possível converter o argumento número de 'tipo1' para 'tipo2'
Erro do compilador C2665 'função': nenhuma função sobrecarregada poderia converter todos os tipos de argumento
Erro do compilador C2666 'função': funções sobrecarregadas têm conversões semelhantes
Erro do compilador C2667 'função': nenhuma função sobrecarregada tem uma melhor conversão
Erro do compilador C2668 'função': chamada ambígua para função sobrecarregada
Erro do compilador C2669 Função de membro não permitida na união anônima
Erro de compilador C2670 'função': o modelo de função não pode converter parâmetro número do tipo 'tipo'
Erro do compilador C2671 'função': as funções de membro estático não têm ponteiros 'este'
Erro de compilador C2672 'função': nenhuma função sobrecarregada correspondente encontrada
Erro de compilador C2673 'função': funções globais não têm ponteiros 'this'
Erro do compilador C2674 Neste contexto, não é permitida uma declaração genérica
Erro de compilador C2675 operador unário '': ' tipo' não define este operador nem uma conversão para um tipo aceito pelo operador predefinido
Erro do compilador C2676 operador binário '': 'tipo' não define este operador nem uma conversão para um tipo aceitável para o operador predefinido
Erro do compilador C2677 Operador binário 'operador': nenhum operador global encontrado que aceita o tipo 'tipo' (ou não há uma conversão aceitável)
Erro de compilador C2678 operador binário '': nenhum operador encontrado que aceite um operando à esquerda do tipo 'tipo' (ou não há conversão aceitável)
Erro do compilador C2679 binário 'operador': não foi encontrado nenhum operador que aceite um operando à direita do tipo 'tipo' (ou não há conversão aceitável)
Erro do compilador C2680 'type': tipo de destino inválido para cast
Erro do compilador C2681 'type': tipo de expressão inválido para cast
Erro de compilador C2682 não pode usar 'cast' para converter de 'type1' para 'type2'
Erro do compilador C2683 'fundido': 'tipo' não é um tipo polimórfico
Erro de compilador C2684 'declarador': funções eliminadas e padrão não são suportadas em classes geridas/WinRT
Erro do compilador C2685 'declarador': funções excluídas e padrão não são suportadas com especificadores de restrição explícitos
Erro do compilador C2686 Não é possível sobrecarregar funções de membro estático e não estático com os mesmos tipos de parâmetros
Erro do compilador C2687 «tipo»: a declaração de exceção não pode ser «nula» nem indicar um tipo ou ponteiro incompleto ou uma referência a um tipo incompleto
Erro do compilador C2688 'tipo::membro': retornos covariantes com herança múltipla ou virtual não suportada para funções varargs
Erro do compilador C2689 'função': uma função amiga não pode ser definida dentro de uma classe local
Erro de compilador C2690 'operador': não é possível executar aritmética de ponteiro em uma matriz gerenciada/WinRT
Erro de compilador C2691 'type': uma matriz gerenciada/WinRT não pode ter esse tipo de elemento
Erro de compilador C2692 'função': funções totalmente prototipadas necessárias para o compilador C ao usar a opção '/clr'
Erro de compilador C2693 'operador': comparação ilegal para referências a uma matriz gerenciada/WinRT
Erro de compilador C2694 'override_function': a função virtual de substituição tem uma especificação de exceção menos restritiva do que a função virtual de membro da classe base 'base_function'
Erro de compilador C2695 'override_function': a substituição da função virtual difere de 'base_function' apenas na convenção de chamada
Erro de compilador C2696 Não é possível criar um objeto temporário do tipo gerenciado/WinRT 'tipo'
Erro de compilador C2697 Obsoleto.
Erro do compilador C2698 a declaração de utilização para a «declaração de»1» não pode coexistir com a declaração de utilização existente para a «declaração de»2»

Ver também

Erros e avisos do compilador C/C++ e das ferramentas de construção
Erros de compilador C2000 - C3999, C7000 - C7999