Compartilhar via


Opções, Editor de Texto, C/C++, Avançado

Ao alterar essas opções, você pode definir o comportamento relacionado ao IntelliSense e ao banco de dados de navegação quando estiver programando em C ou C++.

Você pode acessar as configurações selecionandoOpções de Ferramentas> na barra de menus do Visual Studio e expandindo a seçãoC/C++>Advanced do Editor> de Texto. A maioria das configurações tem uma opção de valor True/False. Para habilitar uma configuração, defina o valor como True.

Observação

Seu computador pode mostrar nomes ou locais diferentes para alguns dos elementos do IDE do Visual Studio nas instruções a seguir. A edição do Visual Studio que você tem e as configurações que você usa determinam esses elementos. Para obter mais informações, consulte Personalizar o IDE do Visual Studio.

As opções no Editor> de TextoC/C++>Advanced foram movidas para outros locais no Visual Studio 2026:

Visual Studio 2022 Visual Studio 2026
Conclusão da chave Conclusão da chave do editor > de texto C/C++ > de idiomas >
Navegação/navegação Navegação & navegação do IntelliSense > de linguagens > C/C++ >
Pesquisando fallback de banco de dados Idiomas > C/C++ > IntelliSense > Navegação &localização de navegação >
Análise de Código Análise de código C/C++ > de idiomas >
Log de diagnóstico Log de diagnóstico do IntelliSense > de linguagens > C/C++ >
Lista de Erros Lista de erros do C/C++ > de idiomas >
IntelliSense Linguagens > C/C++ >IntelliSense
IntelliSense e Navegação para arquivos que não são de projeto Linguagens > C/C++ > Arquivos não-projeto do IntelliSense >
References Referências do IntelliSense > do C/C++ > de linguagens >
Editor de Texto Editor de texto C/C++ > de idiomas >

Conclusão da chave

As opções a seguir configuram a conclusão da chave ao programar com C e C++.

  • Adicionar ponto-e-vírgula para tipos: quando habilitado, o Visual Studio insere automaticamente um ponto-e-vírgula após a chave de fechamento para uma definição de tipo. O padrão é True.

  • Parênteses completos em literais de cadeia de caracteres brutos: quando habilitado, se você digitar um parêntese aberto em um literal de cadeia de caracteres bruta, o Visual Studio adicionará automaticamente os parênteses de fechamento. O padrão é True.

  • Concluir comentários multilinha: quando habilitado, o Visual Studio adiciona automaticamente a sintaxe de conclusão para comentários multilinha (comentários que começam com /*). O padrão é True.

Pesquisando fallback de banco de dados

As opções a seguir configuram o local do banco de dados de navegação ao programar com C e C++.

O "Local de Fallback" é onde os arquivos de suporte do SDF e do IntelliSense (por exemplo, iPCH) são colocados quando o local primário (mesmo diretório da solução) não é usado. Essa situação pode ocorrer quando o usuário não tem permissões para gravar no diretório da solução ou o diretório da solução está em um dispositivo lento. O local de fallback padrão está no diretório temporário do usuário.

  • Sempre use o Local de Fallback: quando habilitado, indica que o banco de dados de navegação de código e os arquivos do IntelliSense sempre devem ser armazenados em um diretório que você especifica como seu "Local de Fallback" e não ao lado do arquivo de solução (.sln). O IDE nunca tenta colocar os arquivos SDF ou iPCH ao lado do diretório da solução e sempre usa o Local de Fallback. Por padrão, essa configuração está desabilitada.

  • Não avisar se o local de fallback for usado: quando habilitado, o Visual Studio não fornecerá uma notificação quando um diretório local de fallback é usado. Normalmente, você recebe uma notificação quando o Local do Fallback está em uso.

  • Local de fallback: o "Local de Fallback" é usado como um local secundário para armazenar o banco de dados de navegação de código ou arquivos do IntelliSense. Por padrão, seu diretório temporário é seu Local de Fallback. Quando o padrão está em uso, o valor da opção é definido como NULL (0). Para especificar um valor diferente, insira o caminho do diretório na caixa de valor da opção.

    O IDE cria um subdiretório no caminho especificado (ou no diretório temporário) que inclui o nome da solução juntamente com um hash do caminho completo para a solução, o que evita problemas com nomes de solução sendo idênticos.

Navegação/navegação

As opções a seguir configuram a navegação e a navegação ao programar com C e C++.

Importante

Por padrão, as opções a seguir são desabilitadas (False). Habilite essas opções apenas no caso raro em que uma solução é tão grande que a atividade de banco de dados consome uma quantidade inaceitável de recursos do sistema.

  • Desabilitar Banco de Dados: quando habilitado, o SDF (banco de dados de navegação de código), todas as outras opções de Navegação/Navegação e todos os recursos do IntelliSense (exceto a opção #include Preenchimento Automático ) serão desabilitados.

  • Desabilitar atualizações de banco de dados: quando habilitado, o banco de dados é aberto no modo somente leitura e nenhuma atualização é executada enquanto os arquivos estão sendo editados. A maioria dos recursos continua funcionando. No entanto, à medida que as edições são feitas, os dados ficam desatualizados, o que leva a resultados incorretos.

  • Desabilitar Atualizações Automáticas de Banco de Dados: quando habilitado, o banco de dados de navegação de código não é atualizado automaticamente quando os arquivos de origem são modificados. No entanto, se você abrir o Gerenciador de Soluções, abra o menu de atalho do projeto e selecione Rescan Solution, todos os arquivos desatualizados serão verificados e o banco de dados será atualizado.

  • Desabilitar Arquivos Implícitos: um projeto contém arquivos de origem e arquivos de cabeçalho especificados explicitamente. Esses arquivos podem conter referências a outros arquivos externos ao projeto (por exemplo, afxwin.h, windows.he atlbase.h). Os arquivos externos são chamados de arquivos implícitos ou dependências.

    Quando habilitado, o banco de dados de navegação de código não coleta dados para os arquivos implícitos. O sistema não indexa os arquivos e alguns recursos não estão disponíveis para os arquivos. Além disso, as opções Desabilitar Limpeza Implícita e Desabilitar Pastas de Dependências Externas estão habilitadas implicitamente.

  • Desabilitar a Limpeza Implícita: quando habilitado, o banco de dados de navegação de código não limpa arquivos implícitos que não são mais referenciados. Essa opção impede que arquivos implícitos sejam removidos do banco de dados quando eles não forem mais usados. Por exemplo, se você adicionar uma #include diretiva que referencia o mapi.h cabeçalho a um arquivo de origem, o mapi.h arquivo será encontrado e indexado. Se posteriormente você remover a #include sintaxe e o arquivo de cabeçalho não for referenciado em outro lugar, as informações sobre o arquivo de cabeçalho não serão removidas. Ele permanece disponível para referências futuras.

    Observação

    Se você repetir explicitamente a solução, sua configuração para essa opção será ignorada. Para obter mais informações, consulte a opção Rescan Solution Interval .

  • Desabilitar pastas de dependências externas: no Gerenciador de Soluções, cada projeto pode conter uma pasta Dependências Externas , que contém a lista de todos os arquivos implícitos para esse projeto. Quando habilitado, o Visual Studio não cria ou atualiza a pasta Dependências Externas para cada projeto.

  • Ocultar pastas de dependências externas: quando habilitada, a pasta Dependências Externas para projetos não fica visível no Gerenciador de Soluções.

  • Recriar Banco de Dados: quando habilitado, o Visual Studio recria o banco de dados de navegação de código quando a solução é carregada. Na próxima vez que você carregar a solução, o arquivo de banco de dados SDF existente será excluído, recriado e todos os arquivos reindexados.

  • Rescanar o Intervalo da Solução: essa opção fornece o intervalo de execução para o trabalho 'Rescan Solution Now'. O valor padrão é 60 minutos. Especifique um intervalo entre 0 e 5.000 minutos.

    Enquanto o Visual Studio está verificando novamente a solução, os carimbos de data/hora do arquivo são verificados para determinar se um arquivo foi alterado fora do IDE. (As alterações feitas no IDE são controladas automaticamente e os arquivos são atualizados.) Arquivos incluídos implicitamente são verificados para confirmar referências existentes.

  • Desabilitar a navegaçãoTo-Date verificação: quando habilitado, o Visual Studio não espera que o banco de dados de navegação de código seja up-to-date ao executar operações de navegação.

  • Desabilitar a Seleção de Item Atual: quando habilitado, o Visual Studio não mostra informações para o elemento de código selecionado na janela ferramenta Propriedades e em outro lugar.

  • Exibir regiões ignoradas para arquivos externos: quando habilitadas, regiões ignoradas de arquivos externos são incluídas quando o Visual Studio exibe erros de banco de dados de navegação.

  • Desabilitar Correspondência Difusa: a correspondência difusa encontra correspondências próximas, não exatas, a uma consulta de pesquisa. Em vez de retornar apenas correspondências exatas, a correspondência difusa também retorna cadeias de caracteres ou snippets de código semelhantes que podem não corresponder exatamente à entrada. Você pode ver resultados com variações como erros de digitação ou maiúsculas de minúsculas diferentes.

    Quando habilitado, o Visual Studio retorna apenas correspondências exatas para sua entrada de pesquisa. Quando você habilita a análise difusa, o Visual Studio retorna correspondências exatas e também cadeias de caracteres ou código que correspondem aproximadamente.

  • Desabilitar a Correspondência Difusa do Gerenciador de Soluções: quando habilitada, as pesquisas no Gerenciador de Soluções retornam correspondências exatas para sua entrada de pesquisa. Quando você habilita a análise difusa no Gerenciador de Soluções, os resultados da pesquisa incluem correspondências exatas e correspondências semelhantes para itens em sua solução.

Code Analysis

As opções a seguir são configuradas com a análise de código.

  • Desabilitar a Análise de Código em Segundo Plano: quando habilitado, o Visual Studio não executa a análise de código C++ em segundo plano quando você abre ou salva um arquivo.

  • Desabilitar os Squiggles de Análise de Código: quando habilitado, o Visual Studio não mostra rabiscos para avisos de análise de código C++ no editor. Os erros continuam sendo exibidos na janela Lista de Erros. Se você modificar a configuração nessa opção e tiver janelas abertas, a nova configuração afetará somente as janelas que você abrir após a alteração.

  • Habilitar o registro em log de análise de código: quando habilitado, o Visual Studio dá suporte ao registro em log de depuração para análise de código em segundo plano do C++.

Log de diagnóstico

As opções a seguir configuram a coleção de informações avançadas para ajudar a diagnosticar problemas.

Observação

A menos que você seja solicitado a fornecer dados de log de diagnóstico, a recomendação é desabilitar as opções.

  • Habilitar o registro em log: quando habilitado, o Visual Studio envia dados de log de diagnóstico para a janela de saída.

  • Nível de registro em log: use essa opção para definir a verbosidade de log, de 0 (mais silencioso) para 5 (o mais detalhado – padrão).

  • Filtro de log: use essa opção para filtrar os tipos de eventos exibidos usando uma máscara de bits. Defina o valor usando uma soma de qualquer um dos seguintes tipos de evento:

    Value Tipo de evento
    0 Nenhum (padrão)
    1 Geral
    2 Inativo
    4 Workitem
    8 IntelliSense
    16 ACPerf
    32 Classview

    Dependendo do valor, talvez seja necessário sair e reiniciar o Visual Studio.

Lista de Erros

A opção a seguir ajuda na coleta de informações avançadas para ajudar a diagnosticar problemas.

  • Mostrar detalhes do problema em clique duplo: quando habilitado (padrão), o Visual Studio exibe a janela Detalhes do Problema quando você clica duas vezes em um problema para exibir os detalhes associados. A janela fica visível à medida que você navega da janela Lista de Erros até o local do problema no código-fonte.

IntelliSense

As opções a seguir configuram vários recursos do IntelliSense.

  • Informações Rápidas Automáticas: quando habilitadas (padrão), as dicas de ferramenta QuickInfo são exibidas quando você move o ponteiro do mouse sobre o texto.

  • Desabilitar o IntelliSense: quando habilitado, todos os recursos do IntelliSense são desabilitados. O IDE não cria VCPkgSrv.exe processos para atender solicitações do IntelliSense e nenhum recurso do IntelliSense funciona (QuickInfo, Lista de Membros, Preenchimento Automático, Ajuda para o Param). Colorização semântica e realce de referência também estão desabilitados. Essa opção não desabilitar os recursos de navegação que dependem exclusivamente do banco de dados (incluindo a barra de navegação, ClassView e a janela Propriedade).

  • Desabilitar a Atualização Automática: quando habilitada, a atualização do IntelliSense é atrasada até que uma solicitação real do IntelliSense seja feita. Esse atraso pode resultar em um tempo de execução mais longo para a primeira operação do IntelliSense em um arquivo, mas pode ser útil em computadores lentos ou restritos a recursos.

    Quando habilitado, as seguintes opções também são habilitadas (True) por padrão:

  • Desabilitar o Relatório de Erros: quando habilitados, os erros do IntelliSense não são indicados com rabiscos e não são exibidos na janela Lista de Erros.

    Considerações para esta opção:

    • Quando habilitada, a análise em segundo plano do relatório de erros é desabilitada.
    • Quando habilitada, a opção Desabilitar Squiggles também está habilitada (True) por padrão.
    • Quando a opção Desabilitar Atualização Automática está habilitada (True), essa opção também está habilitada e indisponível para seleção manual.

  • Desabilitar squiggles: quando habilitado, os erros do IntelliSense não são indicados com "rabiscos" vermelhos na janela do editor, mas o erro é exibido na janela Lista de Erros.

    Considerações para esta opção:

  • Ajustar automaticamente o máximo de unidades de tradução armazenadas em cache: quando habilitado (padrão), o valor máximo das Unidades de Tradução Armazenadas em Cache é ajustado automaticamente com base na RAM do sistema disponível. Essa ação define automaticamente o número máximo de unidades de tradução para se manter ativo a qualquer momento para solicitações do IntelliSense. Se você preferir especificar o valor manualmente, desabilite essa opção (False).

    Para obter mais informações sobre unidades de tradução, consulte Fases de tradução.

  • Unidades de Tradução Em Cache Máximo: use esta opção para especificar o número máximo de unidades de tradução para se manter ativo a qualquer momento para solicitações do IntelliSense. O valor deve estar entre 2 e 64.

    Quando a opção Auto Tune Max Cached Translation Units estiver habilitada (True), o valor dessa opção será determinado pelo sistema e não poderá ser alterado manualmente. Para alterar o valor, primeiro defina a opção Auto Tune Max Cached Translation Units como False.

  • Desabilite #include Preenchimento Automático: quando habilitado, o IntelliSense não fornece uma lista de preenchimento automático para #include instruções.

  • Use a barra de encaminhamento em #include Preenchimento Automático: quando habilitada (padrão), o IntelliSense preenchimento #include automático de instruções quando você especifica a barra /de encaminhamento. O delimitador padrão é barra invertida \. O compilador pode aceitar qualquer um dos caracteres, portanto, use essa opção para indicar se deve usar a barra de encaminhamento para sua base de código.

  • Desabilitar a Lista de Membros Agressivos: quando habilitada, o IntelliSense não mostra a lista de membros enquanto você digita o nome de um tipo ou variável. A lista aparece somente depois que você insere um dos caracteres de confirmação especificados na opção Caracteres de Confirmação da Lista de Membros .

  • Desabilitar palavras-chave da lista de membros: quando habilitado, o IntelliSense não mostra palavras-chave de idioma, como void, classem switch sugestões de lista de membros.

  • Desabilitar snippets de código de lista de membros: quando habilitado, o IntelliSense não mostra snippets de código em sugestões de lista de membros.

  • Modo de Filtro de Lista de Membros: use esta opção para definir o tipo de algoritmo correspondente para filtrar a lista de membros. Escolha entre as seguintes opções:

    • Difusa (padrão): localize as correspondências mais possíveis usando um algoritmo semelhante a um verificador ortográfico, que localiza correspondências aproximadas e idênticas.
    • Inteligente: corresponda às subcadeias de caracteres mesmo que elas não estejam no início de uma palavra.
    • Prefixo: corresponde apenas a subcadeias de caracteres idênticas que começam no início da palavra.
    • Nenhum: não use filtragem.
  • Desabilitar a Colorização Semântica: quando habilitado, o IntelliSense desativa toda a colorização de código, exceto palavras-chave de linguagem, cadeias de caracteres e comentários.

  • Caracteres de confirmação da lista de membros: use esta opção para especificar os caracteres que você pode inserir para confirmar a sugestão de lista de membros realçada. Você pode adicionar ou remover caracteres desta lista: {}[]().,:;+-*/%&|^!=<>?@#\.

  • Confirmação de Lista de Membros Inteligentes: quando habilitado, depois de selecionar Enter no final de uma palavra totalmente tipada para concluir uma confirmação, o IntelliSense adiciona uma nova linha.

  • Confirmação de Lista de Membros Agressiva: quando habilitada, o conjunto de caracteres de confirmação especificado na opção Caracteres de Confirmação de Lista de Membros está disponível para uma lista de membros invocada agressivamente .

  • Use a Lista de Membros Agressivos para Lista de Membros Automáticos: quando habilitada e a Lista de Membros Automáticos é mostrada, digitar um dos caracteres especificados na opção Caracteres de Confirmação de Lista de Membros não conclui a confirmação.

  • Use Tab para confirmar na Lista de Membros Agressivos: quando habilitado (padrão) e a Lista de Membros Agressivos é mostrada, você pode concluir a confirmação selecionando Tab.

  • Use Tab para Inserir Snippet: quando habilitado (padrão), o IntelliSense insere um snippet quando você seleciona Tab, independentemente de a lista de membros ser mostrada. Uma exceção para esse comportamento é quando a chave de atalho é atribuída à ação Edit.InvokeSnippetFromShortcut .

  • Desabilitar módulos: quando habilitado, o IntelliSense exibe vários recursos de IDE para módulos C++20, como a criação automática de módulos necessários.

  • Filtro de Lista de Membros Inacessível: quando habilitado (padrão), o IntelliSense não exibe itens inacessíveis em listas de membros.

  • Desabilite o IntelliSense para Plataformas Inativas: quando habilitados, os recursos do IntelliSense são desabilitados para plataformas inativas em pastas e projetos de ativos compartilhados.

  • Habilitar o Ponto para Seta da Lista de Membros: quando habilitado (padrão), depois que o IntelliSense confirma um item, ele substitui . por uma seta ->.

  • Desabilitar cabeçalho pré-compilado automático: quando habilitado, o IntelliSense não usa um cabeçalho pré-compilado automático. Cabeçalhos pré-compilados podem acelerar algumas operações do IntelliSense, mas o tamanho do cache da solução no disco rígido aumenta.

  • Cota de cache de cabeçalho pré-compilado automático: use esta opção para especificar o tamanho máximo do cache por solução em megabytes. O uso real pode flutuar em torno do valor especificado.

  • Limite de memória de processo do IntelliSense: use essa configuração para especificar o uso máximo de memória total de um processo do IntelliSense em megabytes.

  • Limite inativo do IntelliSense da Plataforma: use essa configuração para especificar o número máximo de plataformas inativas que são processadas para o IntelliSense. O valor deve estar entre 1 e 16.

  • Habilitar o IntelliSense de Modelo: quando habilitado (padrão), se o cursor estiver ativo dentro de um corpo de modelo, o IntelliSense exibirá uma barra no editor que você pode usar para configurar os atributos do IntelliSense para o modelo.

  • Habilitar o Link de Ajuda em Informações Rápidas: quando habilitado (padrão), o IntelliSense dá suporte à vinculação a pesquisas online na dica de ferramenta Informações Rápidas.

  • Use a Pesquisa na Web no Link de Ajuda de Informações Rápidas: quando habilitado (padrão), o IntelliSense inicia uma pesquisa na Web com o provedor de pesquisa especificado para dar suporte a pesquisas online na dica de ferramenta Informações Rápidas. Se você desabilitar (False) a opção, o IntelliSense oferecerá suporte à Ajuda F1 .

  • Provedor de Pesquisa: use a opção para especificar a URL a ser direcionada para ajuda online sobre erros. Por padrão, o valor é definido como https://www.bing.com/search?q={0}. Quando você acessa o link do IDE, o IntelliSense substitui a {0} parte do link pelo erro a ser pesquisado.

IntelliSense e Navegação para arquivos que não são de projeto

As opções a seguir configuram os recursos do IntelliSense para arquivos nãoprojetos ao programar com C e C++.

  • Habilitar os Squiggles do IntelliSense: quando habilitado, o IntelliSense alterna a exibição para arquivos nãoprojetos autônomos. Por predefinição, esta opção está definida como Falso. Quando a opção Habilitar Arquivo Único Avançado estiver desabilitada (False), essa opção será ignorada e não estará disponível para seleção manual.

  • Mostrar erros do IntelliSense na lista de erros: quando habilitado, erros do IntelliSense de arquivos autônomos não reproduzidos na janela Lista de Erros. Por predefinição, esta opção está definida como Falso. Quando a opção Habilitar Arquivo Único Avançado estiver desabilitada (False), essa opção será ignorada e não estará disponível para seleção manual.

  • Suspender novos arquivos durante a depuração: quando habilitado, o IntelliSense não está habilitado para arquivos recém-abertos enquanto você está depurando. Por predefinição, esta opção está definida como Falso. Quando a opção Habilitar Arquivo Único Avançado estiver desabilitada (False), essa opção será ignorada e não estará disponível para seleção manual.

Referências

As opções a seguir configuram referências ao programar com C e C++.

  • Desabilitar Realce de Referência: por padrão, quando você seleciona algum texto no editor, incluindo código e símbolos, todas as instâncias do mesmo texto são realçadas automaticamente no arquivo atual. Para desabilitar o realce automático, defina essa opção como True. O valor padrão é False.

  • Ajustar Automaticamente os Threads de Localização Máxima de Referências: quando habilitado (padrão), o valor Máximo de Threads de Referências de Localização é ajustado automaticamente com base no número de núcleos de CPU. Se você preferir especificar o valor manualmente, desabilite essa opção (False).

  • Max Find References Threads: use esta opção para especificar o número máximo de threads simultâneos que o sistema pode usar para localizar referências. O valor deve estar entre 1 e 63.

    Quando a opção Ajustar Automaticamente Max Find References Threads estiver habilitada (True), o valor dessa opção será determinado pelo sistema e não poderá ser alterado manualmente. Para alterar o valor, primeiro defina a opção Localizar Threads de Referências Máximas de Ajuste Automático como False.

Editor de Texto

As opções a seguir configuram ações de formatação automática no editor de código ao programar com C e C++.

  • Modo de Surround Automático: use essa configuração para controlar se o Visual Studio envolve automaticamente (inclui) suas seleções enquanto você trabalha no editor. Você pode cercar seleções entre colchetes (quadrado []) e aspas (duplo "" ou único '').

    Por exemplo, se você digitar uma cotação ou colchete aberta, o Visual Studio poderá adicionar automaticamente a cotação de fechamento ou colchete para colocar (surround) sua seleção. Escolha somente entre Aspas, Somente Colchetes, Todos (padrão) ou Nunca.

  • Formatar após o Surround Automático: quando habilitado, o Visual Studio formata a sintaxe de código dentro da seção fechada depois que a seleção é cercada automaticamente. O padrão é True.

  • Expandir Seleção para Escopos surround: quando habilitado, se você cercar uma seleção que aparece dentro de um escopo { ... }de chave, o surround se expandirá para toda a linha. O padrão é True.

    Se sua seleção não iniciar e terminar em linhas inteiras, o Visual Studio expandirá automaticamente a seleção para linhas inteiras antes de { ... }inserir. Essa abordagem evita encapsular linhas parciais dentro das chaves.