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.
Você pode usar os itens de menu e os atalhos de teclado mostrados na imagem a seguir para acessar o IntelliSense.
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ê.
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.
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.
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.
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.
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:
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 identificadorHELLO
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 identificadorHELLO
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.
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:
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.