Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Ao alterar estas opções, pode definir o comportamento relacionado com o IntelliSense e a base de dados de navegação quando está a programar em C ou C++.
Pode aceder às definições selecionando Opções de Ferramentas> na barra de menu do Visual Studio e expandindo a secção Editor de Texto>C/C++>Avançado. A maioria das definições tem uma opção de valor Verdadeiro/Falso. Para ativar uma definição, defina o valor para Verdadeiro.
Observação
O seu computador pode mostrar nomes ou localizações diferentes para alguns dos elementos do IDE do Visual Studio nas instruções seguintes. 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 em Editor de Texto>C/C++>Advanced foram transferidas para outras localizações no Visual Studio 2026:
| Visual Studio 2022 | Visual Studio 2026 |
|---|---|
| Conclusão de Travessão | Linguagens > Editor de Texto C/C >>++ Conclusão do Suporte |
| Navegação/Navegação | Linguagens > C/C++ > IntelliSense >Navegação e navegação |
| Recurso na Navegação da Base de Dados | Linguagens > C/C++ > IntelliSense > Localização de Navegação > e Navegação |
| Análise de Código | Linguagens > Análise de código C/C++ > |
| Registo de Diagnóstico | Linguagens > C/C++ > Registo de diagnóstico do IntelliSense > |
| Lista de Erros | Lista de erros de linguagens > C/C++ > |
| IntelliSense | Linguagens > C/C++ >IntelliSense |
| IntelliSense e procurar ficheiros que não sejam de projeto | Linguagens > C/C >>++ IntelliSense Ficheiros não-projeto |
| Referências | Linguagens > C/C++ > Referências IntelliSense > |
| Editor de Texto | Linguagens > Editor de Texto C/C++ > |
Acabamento da cinta
As seguintes opções configuram a completação de braquetes ao programar com C e C++.
Adicionar ponto e vírgula para os tipos: Quando ativado, o Visual Studio insere automaticamente um ponto e vírgula após a chave de encerramento para a definição do tipo. O padrão é True.
Parênteses Completos em Literais de Strings Brutos: Quando ativado, se escrever um parêntese aberto num literal de string bruto, o Visual Studio adiciona automaticamente os parênteses de encerramento. O padrão é True.
Comentários Multilinhas Completos: Quando ativado, o Visual Studio adiciona automaticamente a sintaxe de conclusão para comentários multilinha (comentários que começam por
/*). O padrão é True.
Navegação Fallback do banco de dados
As seguintes opções configuram a localização da base de dados de navegação ao programar com C e C++.
A "Localização de Reserva" é onde os ficheiros de suporte SDF e IntelliSense (por exemplo, iPCH) são colocados quando a localização principal (o mesmo diretório da solução) não é utilizada. Esta situação pode ocorrer quando o utilizador não tem permissões para escrever no diretório da solução ou quando o diretório da solução está num dispositivo lento. A localização de recurso, por defeito, está no diretório temporário do utilizador.
Use sempre a Localização de Reserva: Quando ativada, indica que a base de dados de navegação de código e os ficheiros IntelliSense devem estar sempre armazenados numa pasta que especifique como a sua "Localização de Reserva" e não ao lado do ficheiro da solução (
.sln). O IDE nunca tenta colocar os ficheiros SDF ou iPCH ao lado do diretório da solução e usa sempre a Localização de Reserva. Por predefinição, esta definição está desativada.Não avise se for usada a localização de reserva: Quando ativado, o Visual Studio não fornece notificação quando é usado um diretório de Localização de Reserva. Normalmente, recebe uma notificação quando a Localização de Reserva está em uso.
Localização de Reserva: A "Localização de Reserva" é usada como localização secundária para armazenar a base de dados de navegação de código ou ficheiros IntelliSense. Por defeito, o teu diretório temporário é a tua Localização de Reserva. Quando o valor padrão está em uso, o valor da opção é definido como NULL (0). Para especificar um valor diferente, introduza o caminho do diretório na caixa de valor da opção.
O IDE cria um subdiretório sob o caminho especificado (ou 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 idênticos.
Navegação/Navegação
As seguintes opções configuram a navegação e navegação ao programar com C e C++.
Importante
Por defeito, as seguintes opções estão desativadas (Falso). Só ativem estas opções no raro caso em que uma solução seja tão grande que a atividade da base de dados consome uma quantidade inaceitável de recursos do sistema.
Desativar Base de Dados: Quando ativada, a base de dados de navegação de código (SDF), todas as outras opções de navegação/navegação e todas as funcionalidades do IntelliSense (exceto a opção #include Auto Complete ) ficam desativadas.
Desativar Atualizações da Base de Dados: Quando ativada, a base de dados é aberta em modo apenas de leitura e não são realizadas atualizações enquanto os ficheiros estão a ser editados. A maioria das funcionalidades continua a funcionar. No entanto, à medida que são feitas edições, os dados ficam desatualizados, o que leva a resultados incorretos.
Desativar Atualizações Automáticas da Base de Dados: Quando ativada, a base de dados de navegação de código não é atualizada automaticamente quando os ficheiros fonte são modificados. No entanto, se abrir o Explorador de Soluções, abrir o menu de atalhos do projeto e selecionar Reescanear Solução, todos os ficheiros desatualizados são verificados e a base de dados é atualizada.
Desativar Ficheiros Implícitos: Um projeto contém ficheiros de origem e ficheiros de cabeçalho que são explicitamente especificados. Estes ficheiros podem conter referências a outros ficheiros externos ao projeto (por exemplo,
afxwin.h,windows.h, eatlbase.h). Os ficheiros externos são referidos como ficheiros implícitos ou dependências.Quando ativada, a base de dados de navegação de código não recolhe dados para os ficheiros implícitos. O sistema não indexa os ficheiros e algumas funcionalidades não estão disponíveis para eles. Além disso, as opções Desativar Limpeza Implícita e Desativar Pastas de Dependências Externas estão implicitamente ativadas.
Desativar a Limpeza Implícita: Quando ativada, a base de dados de navegação de código não limpa ficheiros implícitos que já não são referenciados. Essa opção impede que arquivos implícitos sejam removidos do banco de dados quando não forem mais usados. Por exemplo, se adicionares uma
#includediretiva que faz referência aomapi.hcabeçalho de um ficheiro de origem, omapi.hficheiro é encontrado e indexado. Se mais tarde remover a#includesintaxe e o ficheiro de cabeçalho não for referenciado noutro local, a informação sobre o ficheiro de cabeçalho não é removida. Continua disponível para futuras referências.Observação
Se reescaneares explicitamente a solução, a tua definição para esta opção é ignorada. Para mais informações, consulte a opção Intervalo de Solução Reescaneada .
Desabilitar Pastas de Dependências Externas: No Explorador de Soluções, cada projeto pode conter uma pasta de Dependências Externas , que contém a lista de todos os ficheiros implícitos desse projeto. Quando ativado, o Visual Studio não cria nem atualiza a pasta Dependências Externas para cada projeto.
Ocultar pastas de Dependências Externas: Quando ativada, a pasta de Dependências Externas dos projetos não fica visível no Explorador de Soluções.
Recriar Base de Dados: Quando ativado, o Visual Studio recria a base de dados de navegação de código quando a solução carrega. Da próxima vez que carregares a solução, o ficheiro SDF existente é eliminado, recriado e todos os ficheiros reindexados.
Intervalo de Solução de Rescanção: Esta 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á a rever a solução, os carimbos temporais dos ficheiros são verificados para determinar se um ficheiro foi alterado fora do IDE. (As alterações feitas no IDE são automaticamente rastreadas e os ficheiros são atualizados.) Os ficheiros implicitamente incluídos são verificados para confirmar as referências existentes.
Desativar a Verificação de NavegaçãoTo-Date Ativada: Quando ativado, o Visual Studio não espera que a base de dados de navegação de código esteja up-to-data ao executar operações de navegação.
Desativar a Seleção de Itens Atual: Quando ativado, o Visual Studio não mostra informação para o elemento de código selecionado na janela da ferramenta Propriedades e noutros locais.
Mostrar Regiões Saltadas para Ficheiros Externos: Quando ativado, as regiões saltadas de ficheiros externos são incluídas quando o Visual Studio apresenta erros na base de dados de navegação.
Desativar o Fuzzy Matching: O fuzzy matching encontra correspondências próximas, não exatamente, a uma consulta de pesquisa. Em vez de devolver apenas correspondências exatas, o fuzzy matching também devolve strings ou excertos de código semelhantes que podem não corresponder exatamente à entrada. Podes ver resultados com variações como erros tipográficos ou carcaças diferentes.
Quando ativado, o Visual Studio retorna apenas correspondências exatas para a sua entrada de pesquisa. Quando ativas a análise sintática difusa, o Visual Studio devolve correspondências exatas e também strings ou código que correspondem aproximadamente.
Desativar o Fuzzy Matching do Explorador de Soluções: Quando ativado, as pesquisas no Explorador de Soluções retornam correspondências exatas para a sua entrada de pesquisa. Quando ativa a análise sintática difusa no Explorador de Soluções, os resultados da pesquisa incluem correspondências exatas e semelhantes para itens na sua solução.
Análise de código
As seguintes opções configuram-se com análise de código.
Desativar a Análise de Código em Segundo Plano: Quando ativado, o Visual Studio não executa a análise de código C++ em segundo plano quando abre ou guarda um ficheiro.
Desativar Squiggles de Análise de Código: Quando ativado, o Visual Studio não mostra os avisos de squiggles para análise de código C++ no editor. Os erros continuam a aparecer na janela da Lista de Erros. Se modificares a definição desta opção e tiveres janelas abertas, a nova definição afeta apenas as janelas que abrires depois da alteração.
Ativar o registo de análise de código: Quando ativado, o Visual Studio suporta registo de depuração para análise de código em segundo plano em C++.
Registo de diagnóstico
As seguintes opções configuram a coleção de informações avançadas para ajudar a diagnosticar problemas.
Observação
A menos que lhe peçam para fornecer dados de registo de diagnóstico, a recomendação é desativar as opções.
Ativar registo: Quando ativado, o Visual Studio envia dados de registo de diagnóstico para a janela de saída.
Nível de Registo: Use esta opção para definir a verbosidade do registo, de 0 (mais baixo) para 5 (mais verboso - padrão).
Filtro de Registo: Use esta opção para filtrar os tipos de eventos exibidos usando uma máscara de bits. Defina o valor usando a soma de qualquer um dos seguintes tipos de eventos:
Valor Tipo de evento 0 Nenhum (Padrão) 1 General 2 Idle 4 WorkItem 8 IntelliSense 16 ACPerf 32 ClassView Dependendo do valor, pode ser necessário sair e reiniciar o Visual Studio.
Lista de Erros
A opção seguinte ajuda na recolha de informações avançadas para ajudar a diagnosticar problemas.
- Mostrar detalhes do problema ao duplo clique: Quando ativado (por defeito), o Visual Studio mostra a janela Detalhes do Problema quando clica duas vezes num problema para ver os detalhes associados. A janela é visível enquanto navega da janela da Lista de Erros até à localização do problema no seu código-fonte.
IntelliSense
As opções seguintes configuram várias funcionalidades do IntelliSense.
Informação Rápida Automática: Quando ativada (por defeito), as dicas de ferramenta do QuickInfo mostram quando moves o ponteiro do rato sobre o texto.
Desativar o IntelliSense: Quando ativado, todas as funcionalidades do IntelliSense ficam desativadas. O IDE não cria
VCPkgSrv.exeprocessos para atender pedidos IntelliSense, e nenhuma funcionalidade IntelliSense funciona (QuickInfo, Lista de Membros, Auto Complet, Param Help). A coloração semântica e o realce de referência também estão desativados. Esta opção não desativa funcionalidades de navegação que dependem apenas da base de dados (incluindo a Barra de Navegação, ClassView e janela de Propriedades).
Desativar a Atualização Automática: Quando ativada, a atualização do IntelliSense é adiada até que seja feito um pedido real para o IntelliSense. Este atraso pode resultar num tempo de execução mais longo para a primeira operação IntelliSense num ficheiro, mas pode ser útil em máquinas lentas ou com recursos limitados.
Quando ativadas, as seguintes opções também estão ativadas (Verdadeiro) por defeito:
Desativar o Relatório de Erros: Quando ativado, os erros do IntelliSense não são indicados com rabiscos e não são apresentados na janela da Lista de Erros.
Considerações para esta opção:
- Quando ativado, a análise em segundo plano para reportar erros está desativada.
- Quando ativada, a opção Desativar Rabiscos também está ativada (Verdadeiro) por defeito.
- Quando a opção Desativar Atualização Automática está ativada (Verdadeiro), esta opção também fica ativada e não está disponível para seleção manual.
Desativar Rabiscos: Quando ativado, os erros do IntelliSense não são indicados com "rabiscos" vermelhos na janela do editor, mas o erro aparece na janela da Lista de Erros.
Considerações para esta opção:
- Quando a opção Desativar Relatórios de Erros está ativada (Verdadeiro), esta opção também está ativada e não está disponível para seleção manual.
- Quando a opção Desativar Atualização Automática está ativada (Verdadeiro), esta opção também fica ativada e não está disponível para seleção manual.
Auto Tune Max Cached Translation Units: Quando ativado (por defeito), o valor Max Cached Translation Units é automaticamente ajustado com base na RAM disponível do sistema. Esta ação define automaticamente o número máximo de unidades de tradução a manter ativas em cada momento para pedidos IntelliSense. Se preferir especificar o valor manualmente, desative esta opção (Falso).
Para mais informações sobre unidades de tradução, consulte Fases da tradução.
Unidades de Tradução Máxima em Cache: Use esta opção para especificar o número máximo de unidades de tradução a manter ativas em qualquer momento para pedidos IntelliSense. O valor deve estar entre 2 e 64.
Quando a opção Auto Tune Max Cached Translation Units está ativada (Verdadeiro), o valor desta opção é determinado pelo sistema e não pode ser alterado manualmente. Para alterar o valor, primeiro defina a opção Auto Tune Max Cached Translation Units para False.
Desativar #include Auto Complete: Quando ativado, o IntelliSense não fornece uma lista de autocompletamento para
#includeas instruções.Use a barra frontal em #include Completar Automaticamente: Quando ativado (por defeito), o IntelliSense completa
#includeautomaticamente as instruções quando especifica a barra/para a frente. O delimitador padrão é a barra diagonal (backslash\). O compilador pode aceitar qualquer um dos caracteres, por isso use esta opção para indicar se deve usar a barra para a sua base de código.Desativar a Lista Agressiva de Membros: Quando ativada, o IntelliSense não mostra a lista de membros enquanto escreve o nome de um tipo ou variável. A lista aparece apenas depois de inserir um dos caracteres de commit especificados na opção Member List Commit Characters .
Desativar Palavras-Chave da Lista de Membros: Quando ativado, o IntelliSense não mostra palavras-chave linguísticas como
void,class,switchnas sugestões da lista de membros.Desativar Fragmentos de Códigos de Lista de Membros: Quando ativado, o IntelliSense não mostra excertos de código nas sugestões da lista de membros.
Modo de Filtro da Lista de Membros: Use esta opção para definir o tipo de algoritmo de correspondência para filtrar a lista de membros. Escolha entre as seguintes opções:
- Fuzzy (padrão): Encontre o maior número possível de correspondências usando um algoritmo semelhante a um corretor ortográfico, que encontra correspondências aproximadas e idênticas.
- Inteligente: Combina substrings mesmo que não estejam no início de uma palavra.
- Prefixo: Corresponde apenas a substrings idênticas que comecem no início da palavra.
- Nenhum: Não uses filtragem.
Desativar a Colorização Semântica: Quando ativada, o IntelliSense desativa toda a coloração do código, exceto palavras-chave da linguagem, strings e comentários.
Caracteres de commit da lista de membros: Use esta opção para especificar os caracteres que pode inserir para comprometer a sugestão da lista de membros destacada. Pode adicionar ou remover personagens desta lista:
{}[]().,:;+-*/%&|^!=<>?@#\.Commit da lista inteligente de membros: Quando ativado, depois de selecionar Enter no final de uma palavra totalmente digitada para completar um commit, o IntelliSense adiciona uma nova linha.
Commit de Lista de Membros Agressivo: Quando ativado, o conjunto de caracteres de commit especificado na opção de Caracteres de Commit da Lista de Membros está disponível para uma lista de membros invocada agressivamente .
Use Lista de Membros Agressiva para Lista Automática de Membros: Quando ativada e a Lista Automática de Membros é mostrada, escrever um dos caracteres especificados na opção de Comprometer Personagens da Lista de Membros não completa o commit.
Use Tab para fazer commit na Lista Agressiva de Membros: Quando ativado (por defeito) e a Lista Agressiva de Membros é mostrada, pode completar o commit selecionando Tab.
Usar Tab para Inserir Snippet: Quando ativado (por defeito), o IntelliSense insere um snippet quando seleciona Tab, independentemente de a lista de membros aparecer ou não. Uma exceção a este comportamento é quando a tecla de atalho é atribuída à
Edit.InvokeSnippetFromShortcutação.Desabilitar Módulos: Quando ativado, o IntelliSense apresenta várias funcionalidades do IDE para Módulos C++20, como a construção automática dos módulos necessários.
Filtro de Lista de Membros Inacessível: Quando ativado (por defeito), o IntelliSense não mostra itens inacessíveis nas listas de membros.
Desativar o IntelliSense para Plataformas Inativas: Quando ativadas, as funcionalidades do IntelliSense são desativadas para plataformas inativas em pastas e projetos de ativos partilhados.
Ativar Lista de Membros Ponto para Seta: Quando ativado (por defeito), após o IntelliSense comprometer um item, este substitui
.por uma seta->.Desativar cabeçalho pré-compilado automático: Quando ativado, o IntelliSense não utiliza um cabeçalho pré-compilado automático. Cabeçalhos pré-compilados podem acelerar algumas operações do IntelliSense, mas o tamanho da cache da solução no disco rígido aumenta.
Quota Automática de Cache de Cabeçalhos Pré-Compilados: Use esta opção para especificar o tamanho máximo da cache por solução em megabytes. O uso real pode variar em torno do valor especificado.
Limite de Memória do Processo IntelliSense: Use esta configuração para especificar o uso máximo total de memória de um processo IntelliSense em megabytes.
Limite IntelliSense da Plataforma Inativa: Use esta definiçã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.
Ativar o modelo IntelliSense: Quando ativado (por defeito), se o cursor estiver ativo dentro do corpo do modelo, o IntelliSense mostra uma barra no editor que pode usar para configurar os atributos IntelliSense do modelo.
Ativar o Link de Ajuda na Informação Rápida: Quando ativado (por defeito), o IntelliSense suporta a ligação para pesquisas online na dica de ferramenta Informação Rápida.
Use a Pesquisa Web no Link de Ajuda de Informação Rápida: Quando ativado (por defeito), o IntelliSense lança uma pesquisa web com o fornecedor de pesquisa especificado para suportar pesquisas online na dica de Informação Rápida. Se desativar (False) a opção, o IntelliSense suporta Ajuda F1 .
Fornecedor de Pesquisa: Use a opção para especificar o URL a direcionar para ajuda online em caso de erros. Por defeito, o valor é definido para
https://www.bing.com/search?q={0}. Quando acedes ao link a partir do IDE, o IntelliSense substitui a{0}parte do link pelo erro de pesquisa.
IntelliSense e navegação para arquivos que não são do Project
As seguintes opções configuram funcionalidades do IntelliSense para ficheiros não de projeto ao programar com C e C++.
Ativar Ficheiro Único Melhorado: Quando ativado (por defeito), o IntelliSense, a navegação e outras funcionalidades estão ativadas para ficheiros autónomos que não fazem parte de um projeto existente. Quando esta opção está ativada (Verdadeiro), pode configurar as seguintes opções:
- Ativar Squiggles IntelliSense: Quando ativados, os squiggles IntelliSense aparecem para ficheiros independentes que não são de projeto. Por defeito, esta opção está definida como Falso. Quando a opção Ativar Ficheiro Único Melhorado está desativada (Falso), esta opção é ignorada e não está disponível para seleção manual.
- Mostrar Erros do IntelliSense na Lista de Erros: Quando ativado, os erros do IntelliSense provenientes de ficheiros independentes não do projeto são exibidos na janela da Lista de Erros. Por defeito, esta opção está definida como Falso. Quando a opção Ativar Ficheiro Único Melhorado está desativada (Falso), esta opção é ignorada e não está disponível para seleção manual.
- Suspender Novos Ficheiros Durante a Depuração: Quando ativado, o IntelliSense não está ativado para ficheiros recém-abertos enquanto está a depurar. Por defeito, esta opção está definida como Falso. Quando a opção Ativar Ficheiro Único Melhorado está desativada (Falso), esta opção é ignorada e não está disponível para seleção manual.
Referências
As seguintes opções configuram referências ao programar com C e C++.
Desativar o Realce de Referências: Por defeito, quando seleciona algum texto no editor, incluindo código e símbolos, todas as instâncias do mesmo texto são automaticamente destacadas no ficheiro atual. Para desativar o realce automático, defina esta opção para Verdadeiro. O valor padrão é False.
Auto Tune Max Find References Threads: Quando ativado (por defeito), o valor Max Find References Threads é automaticamente ajustado com base no número de núcleos da CPU. Se preferir especificar o valor manualmente, desative esta opção (Falso).
Max Encontrar Threads de Referências: Use esta opção para especificar o número máximo de threads concorrentes que o sistema pode usar para encontrar referências. O valor deve estar entre 1 e 63.
Quando a opção Auto Tune Max Find References Threads está ativada (Verdadeiro), o valor desta opção é determinado pelo sistema e não pode ser alterado manualmente. Para alterar o valor, primeiro defina a opção Auto Tune Max Find References Threads para False.
Editor de Texto
As seguintes opções configuram ações automáticas de formatação no editor de código ao programar com C e C++.
Modo Auto Surround: Use esta definição para controlar se o Visual Studio envolve automaticamente as suas escolhas enquanto trabalha no editor. Pode rodear seleções incluídas entre parênteses (quadrado
[]) e aspas (duplo""ou simples'').Por exemplo, se escrever uma aspas aberta ou um colchete, o Visual Studio pode adicionar automaticamente a citação ou colchete de encerramento para envolver (rodear) a sua seleção. Escolha entre Apenas Citações, Apenas Parênteses, Todos (por defeito) ou Nunca.
Formatar após o Surround Automático: Quando ativado, o Visual Studio formata a sintaxe do código dentro da secção anexa após a seleção estar automaticamente rodeada. O padrão é True.
Expandir a Seleção para Mira Envolvente: Quando ativada, se rodear uma seleção que aparece dentro de uma mira
{ ... }de reforço, a Surround expande-se para toda a linha. O padrão é True.Se a sua seleção não começar e terminar em linhas inteiras, o Visual Studio expande automaticamente a seleção para linhas inteiras antes de inserir
{ ... }. Esta abordagem evita enrolar linhas parciais dentro dos aparelhos.