Compartir a través de


Características de IntelliSense de Visual C++

IntelliSense es un nombre dado a un conjunto de características que facilitan la codificación. IntelliSense para C++ está disponible para archivos independientes, así como para archivos que forman parte de un proyecto de C++. En proyectos multiplataforma, algunas características de IntelliSense están disponibles en archivos .cpp y .c en el proyecto de código compartido, incluso cuando se encuentra en un contexto de Android o iOS.

En este artículo se proporciona información general sobre las características de IntelliSense de C++. Para obtener información sobre cómo configurar el proyecto para IntelliSense y cómo solucionar problemas, consulte Configuración de un proyecto de C++ para IntelliSense.

Características de IntelliSense en C++

IntelliSense es un nombre dado a un conjunto de características que facilitan la codificación. Dado que diferentes personas tienen ideas diferentes sobre lo que resulta conveniente, prácticamente todas las características de IntelliSense se pueden habilitar o deshabilitar en el cuadro de diálogo Opciones, en Editor> de textoC/C++>Avanzado. El cuadro de diálogo Opciones está disponible en el menú Herramientas de la barra de menús.

Cuadro de diálogo Opciones de herramientas

Puede usar los elementos de menú y los métodos abreviados de teclado que se muestran en la siguiente imagen para acceder a IntelliSense.

Menú de IntelliSense

Finalización de declaraciones y lista de miembros

Al empezar a escribir una palabra clave, un tipo, una función, un nombre de variable u otro elemento de programa que reconoce el compilador, el editor ofrece completar la palabra automáticamente.

Ventana Palabra completa de Visual C++

La primera vez que invoque la lista de miembros, solo muestra los miembros a los que se puede acceder para el contexto actual. Si presiona Ctrl+J después, muestra todos los miembros independientemente de la accesibilidad. Si lo invoca una tercera vez, se muestra una lista aún más amplia de elementos de programa. Puede desactivar la lista de miembros en el cuadro de diálogo Opciones, en Editor de texto>C/C++>General>Lista automática de miembros.

Lista de miembros de Visual C++

Ayuda de parámetros

Al escribir una llave de apertura para una llamada de función o un corchete angular en una declaración de variable con plantilla de clase, el editor muestra una ventana pequeña con los tipos de parámetros de cada sobrecarga de la función o constructor. El parámetro "current", basado en la ubicación del cursor, está en negrita. Puede desactivar la información de parámetros en el cuadro de diálogo Opciones, en Editor de texto>C/C++>General>Información de parámetros.

Ayuda de parámetros de Visual C++

Información rápida

Al mantener el cursor del mouse sobre una variable, aparece una ventana pequeña en línea que muestra la información de tipo y el encabezado en el que se define el tipo. Pase el cursor sobre una llamada de función para ver la firma de la función. Puede desactivar Información rápida en el cuadro de diálogo Opciones, en Editor de texto>C/C++>Avanzado>Información rápida automática.

Visual C++ QuickInfo

Marcas onduladas de error

Las líneas onduladas debajo de un elemento del programa (variable, palabra clave, corchete, nombre de tipo, etc.) indican un error o un posible error en el código. Aparece una línea ondulada verde cuando escribes una declaración adelantada para recordarte que todavía necesitas escribir la implementación. Aparece una ondulación púrpura en un proyecto compartido cuando hay un error en el código que no está activo, por ejemplo, cuando estás trabajando en el contexto de Windows pero escribes algo que sería un error en un contexto de Android. Un subrayado ondulado rojo indica un error del compilador o una advertencia en el código activo que necesita gestionar.

Subrayados ondulados de error de Visual C++

Coloración y fuentes de código

Los colores y fuentes predeterminados se pueden cambiar en el cuadro de diálogo Opciones, enFuentes y colores>. Puede cambiar las fuentes de muchas ventanas de interfaz de usuario aquí, no solo el editor. La configuración específica de C++ comienza con "C++"; la otra configuración es para todos los idiomas.

IntelliSense multiplataforma

En un proyecto de código compartido, algunas características de IntelliSense, como las marcas onduladas, están disponibles incluso cuando se trabaja en un contexto de Android. Si escribe código que daría lugar a un error en un proyecto inactivo, IntelliSense todavía muestra líneas onduladas, aunque son de un color diferente al de las líneas onduladas para los errores en el contexto actual.

Considere una aplicación OpenGLES configurada para compilar para Android e iOS. En la ilustración se muestra el código compartido que se está editando. En esta imagen, el proyecto activo es iOS.StaticLibrary:

iOS está seleccionado como proyecto activo.

Tenga en cuenta lo siguiente:

  • La #ifdef rama de la línea 6 está atenuada para indicar una región inactiva, ya que __ANDROID__ no está definida para el proyecto de iOS.

  • La variable greeting de la línea 11 se inicializa con el identificador HELLO, que ahora tiene una marca roja en espiral. Esto se debe a que no se define ningún identificador HELLO en el proyecto de iOS activo actualmente.

  • La línea 12 tiene un subrayado ondulado púrpura en el identificador BYE porque este identificador no está definido en el proyecto Android.NativeActivity actualmente inactivo. Aunque esta línea se compila cuando iOS es el proyecto activo, no se compilará cuando Android sea el proyecto activo. Dado que se trata de código compartido, debe corregir el código aunque se compile en la configuración activa actualmente.

Si cambia el proyecto activo a Android, las marcas onduladas cambian:

  • La #else rama de la línea 8 está atenuada para indicar una región inactiva, ya que __ANDROID__ se define para el proyecto de Android.

  • La variable "greeting" en la línea 11 se inicializa con el identificador HELLO, que presenta un subrayado ondulado de color púrpura. Esto se debe a que no se define ningún identificador HELLO en el proyecto de iOS inactivo actualmente.

  • La línea 12 tiene un subrayado ondulado rojo en el identificador BYE porque este identificador no está definido en el proyecto activo.

IntelliSense para archivos independientes

Al abrir un único archivo fuera de cualquier proyecto, todavía se obtiene IntelliSense. Puede habilitar o deshabilitar determinadas características de IntelliSense en el cuadro de diálogo Opciones, en Editor> de textoC/C++>Avanzado. Para configurar IntelliSense para archivos únicos que no formen parte de un proyecto, busque la sección IntelliSense y exploración de archivos que no formen parte de proyectos.

IntelliSense de un solo archivo de Visual C++

De forma predeterminada, IntelliSense al nivel de un solo archivo utiliza directorios de inclusión estándar para buscar archivos de encabezado. Para agregar directorios adicionales, abra el menú contextual en el nodo Solución y agregue el directorio a la lista Depurar código fuente , como se muestra en la ilustración siguiente:

Agregar una ruta de acceso a un archivo de encabezado.

Habilitación o deshabilitación de características

Dado que diferentes personas tienen ideas diferentes sobre lo que resulta conveniente, prácticamente todas las características de IntelliSense se pueden habilitar o deshabilitar en el cuadro de diálogo Opciones, en Editor> de textoC/C++>Avanzado. El cuadro de diálogo Opciones está disponible en el menú Herramientas de la barra de menús.

Cuadro de diálogo Opciones de herramientas