Compartilhar via


Funcionalidades do Visual C++ IntelliSense

IntelliSense é um nome dado a um conjunto de recursos que tornam a codificação mais conveniente. O IntelliSense para C++ está disponível para arquivos autônomos, bem como para arquivos que fazem parte de um projeto em C++. Em projetos multiplataforma, alguns recursos do IntelliSense estão disponíveis nos arquivos .cpp e .c no projeto de código compartilhado, mesmo quando você está em um contexto Android ou iOS.

Este artigo fornece uma visão geral dos recursos C++ IntelliSense. Para obter informações sobre como configurar seu projeto para o IntelliSense e como solucionar problemas, consulte Configurar um projeto do C++ para o IntelliSense.

Recursos do IntelliSense em C++

IntelliSense é um nome dado a um conjunto de recursos que tornam a codificação mais conveniente. Uma vez que pessoas diferentes têm ideias diferentes sobre o que é conveniente, praticamente todos os recursos do IntelliSense podem ser habilitados ou desabilitados na caixa de diálogo Opções, em Editor de Texto>C/C++>Avançado. A caixa de diálogo Opções está disponível no menu Ferramentas na barra de menus.

Tool Options dialog box

Você pode usar os itens de menu e os atalhos de teclado mostrados na imagem a seguir para acessar o IntelliSense.

IntelliSense menu

Lista de membro e preenchimento de declaração

Quando você começa a digitar uma palavra-chave, um tipo, uma função, um nome de variável ou outro elemento de programa que o compilador reconhece, o editor se oferece para completar a palavra para você.

Visual C++ Complete Word window

Na primeira vez que você invoca a lista de membros, ela mostra apenas membros acessíveis para o contexto atual. Se você pressionar Ctrl+J depois disso, ela mostrará todos os membros, independentemente da acessibilidade. Se você invocá-la uma terceira vez, uma lista ainda maior de elementos do programa será mostrada. Você pode desativar a lista de membros na caixa de diálogo Opções, em Editor de Texto>C/C++>Geral>Listar membros automaticamente.

Visual C++ Member List

Ajuda do parâmetro

Quando você digita uma chave de abertura de uma chamada de função ou colchete angular em uma declaração de variável de modelo de classe, o editor mostra uma pequena janela com tipos de parâmetro para cada sobrecarga da função ou do construtor. O parâmetro "atual", com base no local do cursor, está em negrito. Você pode desativar as informações de parâmetro na caixa de diálogo Opções, em Editor de Texto>C/C++>Geral>Informações de parâmetro.

Visual C++ Parameter Help

Informação Rápida

Quando você passa o cursor do mouse sobre uma variável, aparece uma pequena janela embutida que mostra as informações de tipo e o cabeçalho no qual o tipo é definido. Passe o cursor do mouse sobre uma chamada de função para ver a assinatura da função. Você pode desativar as Informações Rápidas na caixa de diálogo Opções, em Editor de Texto>C/C++>Avançado>Informações Rápidas Automáticas.

Visual C++ QuickInfo

Linhas onduladas de erro

Linhas onduladas em um elemento de programa (variável, palavra-chave, chave, nome do tipo e assim por diante) chamam a atenção para um erro ou erro em potencial no código. Uma linha ondulada verde é exibida quando você escreve uma declaração de encaminhamento para lembrá-lo de que você ainda precisa escrever a implementação. Uma linha ondulada roxa aparece em um projeto compartilhado quando há um erro no código que não está ativo no momento, por exemplo, quando você está trabalhando no contexto do Windows, mas digita algo que seria um erro em um contexto do Android. Uma linha ondulada vermelha indica um erro do compilador ou aviso no código ativo que você precisa resolver.

Visual C++ error squiggles

Colorização e fontes de código

As fontes e cores padrão podem ser alteradas na caixa de diálogo Opções, em Ambiente>Fontes e Cores. Você pode alterar as fontes para muitas janelas da interface do usuário aqui, não apenas para o editor. As configurações específicas do C++ começam com "C++"; as outras configurações são para todas as linguagens.

IntelliSense multiplaforma

Em um projeto de código compartilhado, alguns recursos do IntelliSense, como linhas onduladas, estão disponíveis, mesmo quando você está trabalhando em um contexto Android. Se você escrever algum código que resultaria em um erro em um projeto inativo, o IntelliSense ainda mostrará linhas onduladas, mas elas estarão em uma cor diferente das linhas onduladas para erros no contexto atual.

Considere um aplicativo OpenGLES configurado para compilação no Android e no iOS. A ilustração mostra o código compartilhado que está sendo editado. Nesta imagem, o projeto ativo é iOS.StaticLibrary:

iOS is selected as the active project.

Observe o seguinte:

  • O branch #ifdef na linha 6 é esmaecido para indicar uma região inativa, pois __ANDROID__ não está definido para o projeto iOS.

  • A variável de saudação na linha 11 é inicializada com o identificador HELLO, que agora tem uma linha ondulada vermelha. Isso ocorre porque nenhum identificador HELLO está definido no projeto iOS atualmente ativo.

  • A linha 12 tem linha ondulada roxa no identificador BYE, pois esse identificador não está definido no projeto Android.NativeActivity inativo (no momento). Embora essa linha seja compilada quando iOS é o projeto ativo, ela não será compilada quando Android for o projeto ativo. Uma vez que esse é um código compartilhado, você precisa corrigir o código, embora ele seja compilado na configuração ativa no momento.

Se você alterar o projeto ativo para Android, as linhas onduladas mudarão:

  • O branch #else na linha 8 é esmaecido para indicar uma região inativa, pois __ANDROID__ está definido para o projeto Android.

  • A variável de saudação na linha 11 é inicializada com o identificador HELLO, que tem uma linha ondulada roxa. Isso ocorre porque nenhum identificador HELLO está definido no projeto iOS atualmente inativo.

  • A linha 12 tem uma linha ondulada vermelha no identificador BYE pois esse identificador não está definido no projeto ativo.

IntelliSense para arquivos autônomos

Ao abrir um arquivo único fora de qualquer projeto, você ainda obtém o IntelliSense. Você pode habilitar ou desabilitar os recursos do IntelliSense específicos na caixa de diálogo Opções, em Editor de Texto>C/C++>Avançado. Para configurar o IntelliSense para arquivos únicos que não fazem parte de um projeto, procure a seção IntelliSense e navegação para arquivos que não são de projeto.

Visual C++ single file intellisense

Por padrão, IntelliSense de arquivo único usa apenas diretórios de inclusão padrão para localizar arquivos de cabeçalho. Para adicionar mais diretórios, abra o menu de atalho no nó Solução e adicione seu diretório à lista Depurar Código-Fonte, como mostra a seguinte ilustração:

Adding a path to a header file.

Habilitar ou desabilitar funcionalidades

Uma vez que pessoas diferentes têm ideias diferentes sobre o que é conveniente, praticamente todos os recursos do IntelliSense podem ser habilitados ou desabilitados na caixa de diálogo Opções, em Editor de Texto>C/C++>Avançado. A caixa de diálogo Opções está disponível no menu Ferramentas na barra de menus.

Tool Options dialog box