Compartilhar via


Erros do compilador C3100 a C3199

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 C3100 'identifier': qualificador de atributo desconhecido
Erro do compilador C3101 expressão inválida para argumento de atributo nomeado 'identifier'
Erro do compilador C3102 Obsoleto.
Erro do compilador C3103 'identificador': argumento nomeado repetido
Erro do compilador C3104 argumento de atributo inválido
Erro do compilador C3105 'symbol': não pode ser usado como um atributo
Erro do compilador C3106 'attribute': argumentos sem nome devem preceder argumentos nomeados
Erro do compilador C3107 'attribute': funções membro de atributos nativos não podem ser definidas
Erro do compilador C3108 não é possível deduzir um tipo porque uma lista de inicializadores não é uma expressão
Erro do compilador C3109 'identifier': métodos de interface devem usar a convenção de chamada '__stdcall' ou '__cdecl'
Erro do compilador C3110 'function': você não pode sobrecarregar um método de interface COM
Erro do compilador C3111 Não é possível usar uma lista de inicializadores como o argumento padrão para um parâmetro de modelo
Erro do compilador C3112 'interface': uma interface só pode ser declarada em escopo global ou de namespace
Erro do compilador C3113 uma 'interface/enum' não pode ser um modelo/genérico
Erro do compilador C3114 'identifier': não é um argumento de atributo nomeado válido
Erro do compilador C3115 'attribute': este atributo não é permitido em 'construct'
Erro do compilador C3116 'specifier': classe de armazenamento inválida para o método de interface
Erro do compilador C3117 'interface': uma interface só pode ter uma classe base
Erro do compilador C3118 'interface': interfaces não dão suporte à herança virtual
Erro do compilador C3119 alignas(void) não é permitido
Erro do compilador C3120 'identifier': os métodos de interface não podem receber uma lista de argumentos variáveis
Erro do compilador C3121 não pode alterar o GUID para a classe 'class'
Erro do compilador C3122 'interface': uma interface genérica WinRT não pode ter GUID
Erro do compilador C3123 Uma interface genérica WinRT não pode ter restrições
Erro do compilador C3124 'signed char' não é um tipo de dados WinRT válido. Use 'unsigned char', 'wchar_t' ou 'signed short' em vez disso.
Erro do compilador C3125 'type': tipo não pode derivar direta ou indiretamente de 'Platform::Exception'
Erro do compilador C3126 não é possível definir uma união 'union' dentro do tipo gerenciado/WinRT 'type'
Erro do compilador C3127 'type': característica 'trait' só pode ser usada em uma classe de referência WinRT
Erro do compilador C3128 'type' não tem uma vtable introduzida por 'type'
Erro do compilador C3129 'type': __default_vptr_for_base só pode ser usado em tipos e bases polimórficos definidos localmente
Erro do compilador C3130 Erro Interno do Compilador: falha ao gravar o bloco de código injetado no PDB
Erro do compilador C3131 o projeto deve ter um atributo 'module' com uma propriedade 'name'
Erro do compilador C3132 'parameter': matrizes de parâmetro somente podem ser aplicadas a um argumento formal de tipo 'matriz gerenciada/WinRT de dimensão única'
Erro do compilador C3133 Atributos não podem ser aplicados a varargs do C++
Erro do compilador C3134 'value': o valor do argumento de atributo 'argument' não possui um tipo 'type' válido
Erro do compilador C3135 'identifier': uma propriedade não pode ter um tipo 'const' ou 'volatile'
Erro do compilador C3136 'interface': uma interface COM só pode herdar de outra interface COM, 'interface' não é uma interface COM
Erro do compilador C3137 'identifier': uma propriedade não pode ser inicializada
Erro do compilador C3138 'identifier': uma interface 'attribute' precisa herdar de IDispatch ou de uma interface que herda de IDispatch
Erro do compilador C3139 'type': não é possível exportar um UDT (tipo definido pelo usuário) sem membros
Erro do compilador C3140 não é possível ter vários atributos 'module' na mesma unidade de compilação
Erro do compilador C3141 'interface': interfaces só dão suporte à herança pública
Erro do compilador C3142 'property': você não pode usar o endereço de uma propriedade
Erro do compilador C3143 'argument': argumento de atributo não pode possuir múltiplos valores
Erro do compilador C3144 'attribute': atributo requer argumentos explícitos, 'argumento' não tem nome
Erro do compilador C3145 'identifier': variável global ou estática pode não possuir o tipo 'type' gerenciado/WinRT
Erro do compilador C3146 Obsoleto.
Erro do compilador C3147 Obsoleto.
Erro do compilador C3148 Obsoleto.
Erro do compilador C3149 'type': não é possível usar este tipo aqui sem um 'token' de alto nível
Erro do compilador C3150 'construct': 'attribute' só pode ser aplicado a uma classe, struct, interface, matriz ou ponteiro
Erro do compilador C3151 Obsoleto.
Erro do compilador C3152 'function': 'keyword' só pode ser aplicado a uma classe, struct ou função de membro virtual
Erro do compilador C3153 'interface': você não pode criar uma instância de uma interface
Erro do compilador C3154 ',' esperado antes das reticências. Não há suporte para reticências não separadas por vírgulas em funções de matriz de parâmetros.
Erro do compilador C3155 atributos não são permitidos em um indexador de propriedades
Erro do compilador C3156 'class': não é possível ter uma definição local de um tipo gerenciado/WinRT
Erro do compilador C3157 atributo ParamArray só pode ser aplicado ao último parâmetro
Erro do compilador C3158 'function': 'keyword' só pode ser aplicado a uma função de membro virtual
Erro do compilador C3159 'identifier': matriz de ponteiros para o tipo de valor não pode ser declarada
Erro do compilador C3160 'type': um membro de dados de uma classe gerenciada/WinRT não pode ter esse tipo
Erro do compilador C3161 'interface': aninhar classe, struct ou interface em uma interface é inválido; A interface de aninhamento em uma classe ou struct é inválido
Erro do compilador C3162 'type' : um tipo de referência que possui um destruidor não pode ser usado como um tipo de membro de dados estáticos 'member'
Erro do compilador C3163 'class': atributos inconsistentes com declaração anterior
Erro do compilador C3164 Obsoleto.
Erro do compilador C3165 'value': não é possível converter para um valor de ponto integral ou flutuante
Erro do compilador C3166 Obsoleto. 'type': um membro de dados de uma classe gerenciada/WinRT não pode ter o tipo 'pointer_type para managed_pointer_type interior'
Erro do compilador C3167 Não é possível inicializar .NET Framework: verifique se está instalado
Erro do compilador C3168 'type': tipo subjacente inválido para enumeração
Erro do compilador C3169 'type': não consegue deduzir o tipo para 'auto' de 'type'
Erro do compilador C3170 não é possível ter identificadores de módulo diferentes em um projeto
Erro do compilador C3171 'module': não é possível especificar os diferentes atributos do módulo em um projeto
Erro do compilador C3172 'identifier': não é possível especificar atributos de idl_module diferentes em um projeto
Erro do compilador C3173 incompatibilidade de versão na mesclagem idl
Erro do compilador C3174 o atributo module não foi especificado
Erro do compilador C3175 'function': não é possível chamar um método de um tipo gerenciado da função não gerenciada 'function'
Erro do compilador C3176 'type': não é possível declarar o tipo de valor local
Erro do compilador C3177 você não pode ter uma função de conversão em um tipo que contém 'type' (Obsoleto no Visual Studio 2022).
Erro do compilador C3178 'type': não é possível usar o ParamArray em uma função com argumentos padrão (Obsoleto no Visual Studio 2022).
Erro do compilador C3179 um tipo gerenciado/WinRT sem nome não é permitido
Erro do compilador C3180 'type': nome excede limite de metadados de 'number' caracteres
Erro do compilador C3181 'type': operando inválido para operador
Erro do compilador C3182 'type' : using-declaration ou declaração de acesso membro é inválida dentro de um tipo gerenciado/WinRT
Erro do compilador C3183 não é possível definir class, struct ou union sem nome dentro do tipo 'class' gerenciado/WinRT
Erro do compilador C3184 Obsoleto.
Erro do compilador C3185 'typeid': usado no tipo 'type' gerenciado/WinRT, use 'operator' em vez disso
Erro do compilador C3186 Obsoleto.
Erro do compilador C3187 'identifier' : só está disponível dentro do corpo de uma função
Erro do compilador C3188 Obsoleto.
Erro do compilador C3189 'typeid<declarator>': essa sintaxe não tem mais suporte, use::typeid em vez disso (Obsoleto no Visual Studio 2022).
Erro do compilador C3190 'declarator' com os argumentos de modelo fornecidos não é a instanciação explícita de nenhuma função membro de 'type'
Erro do compilador C3191 Obsoleto.
Erro do compilador C3192 erro de sintaxe: '^' não é um operador de prefixo (você quis dizer '*' ?)
Erro do compilador C3193 'construct': requer a opção de linha de comando '/clr' ou '/ZW'
Erro do compilador C3194 'type': um tipo de valor não pode possuir um operador de atribuição
Erro do compilador C3195 'keyword': é reservada e não pode ser usada como membro de uma classe ref ou tipo de valor. Operadores CLR/WinRT precisam ser definidos usando a palavra-chave 'operator'
Erro do compilador C3196 'identificador': usado mais de uma vez
Erro do compilador C3197 'palavra-chave': só pode ser usada em definições
Erro do compilador C3198 uso inválido de pragmas de ponto flutuante: o pragma fenv_access opera apenas em modo preciso
Erro do compilador C3199 uso inválido de pragmas de ponto flutuante: não há suporte para exceções no modo não preciso

Confira também

Compilador C/C++ e erros e avisos das ferramentas de build
Erros do compilador C2000 a C3999, C7000 a C7999