Ventana Detalles del problema

En la ventana Detalles del problema se muestran los diagnósticos estructurados emitidos por el compilador de MSVC o el análisis de código para C/C++.

Seleccione las entradas de la ventana Lista de errores que muestren un icono en la columna Detalles para abrir la ventana Detalles del problema. La ventana Detalles del problema muestra el diagnóstico estructurado de la entrada seleccionada.

Screenshot of the Visual Studio Error List with one entry that has an icon in its details column.

Captura de pantalla de la lista de errores de Visual Studio. Muestra una tabla con una sola fila. La fila representa un error del compilador y contiene el código de error C2665, la descripción "pet: ninguna función sobrecargada podría convertir todos los tipos de argumentos" y un icono de un cuadrado con la esquina ampliada en la columna denominada Detalles. El icono está resaltado.

Dos escenarios generan estos diagnósticos:

  • Las compilaciones de C++ con MSBuild y el compilador de MSVC pueden emitir diagnósticos estructurados.
  • Advertencias de análisis de código que admiten datos de eventos clave emiten diagnósticos estructurados.

Abra la ventana Detalles del problema realizando una de las siguientes acciones:

  • Mientras la entrada está resaltada, haga doble clic en ella o presione Entrar. Desactive este comportamiento con Herramientas>Opciones>Editor de texto>C/C++>Avanzado>Mostrar detalles del problema al hacer doble clic.
  • Seleccione el icono de la columna Detalles.
  • Abra el menú contextual de la entrada y seleccione la opción Abrir detalles del problema.

De forma predeterminada, la ventana Detalles del problema se abre en la misma ubicación que la ventana Lista de errores. Cambie el lugar donde se abre la ventana Detalles del problema moviéndola a la posición deseada.

La ventana Detalles del problema muestra información estructurada que puede estar anidada. Cuando se abre la ventana, todas las entradas que tienen elementos secundarios anidados comienzan contraídos.

Screenshot of the Visual Studio Problem Details window with all children collapsed.

Captura de pantalla de la ventana Detalles del problema de Visual Studio. Hay un encabezado que muestra el mismo código de error y la misma descripción que la entrada Lista de errores anterior. También hay un vínculo seleccionable con el texto cppcon-diag.cpp (línea 23). Debajo de este encabezado hay entradas que explican que las posibles sobrecargas son void pet(cat), void pet(dog) o void pet(_T0). La entrada final indica "while trying to match the argument list (lizard)". A la derecha de cada línea hay texto gris que muestra los números de archivo y línea de cada entrada. Todos ellos pertenecen a cppcon-diag.cpp y los números de línea son 7, 6, 18 y 23, respectivamente. A la izquierda de las tres primeras entradas hay flechas huecas pequeñas que apuntan a la derecha que indican que estas entradas se pueden expandir, pero actualmente no están expandidas.

Expanda una entrada para ver sus elementos secundarios seleccionando la flecha situada en el lado izquierdo de una entrada o presionando Derecha con la entrada resaltada.

Screenshot of the Visual Studio Problem Details window with some children expanded.

Captura de pantalla de la ventana Detalles del problema de Visual Studio. El contenido es principalmente el mismo que la captura de pantalla anterior, pero algunas de las entradas se expanden para que sus entradas secundarias sean visibles. La primera entrada se expande. Hay una entrada anidada con el texto "void pet(cat) cannot convert argument 1 from lizard to cat". Esta entrada tiene sangría y se puede expandir. La segunda línea de antes se expande, revelando una entrada sin expandir que dice "void pet(dog) cannot convert argument 1 from lizard to dog". La tercera entrada se expande, revelando una entrada que dice "the associated constraints are not satisfied". Esta entrada tiene un elemento secundario expandido que dice "the concept pettable lizard evaluated to false". Esta entrada tiene dos elementos secundarios. El primero no está expandido y dice "the concept has_member_pet lizard evaluated to false". El segundo está expandido y dice "the concept has_default_pet lizard evaluated to false". Este segundo ejemento secundario tiene otros dos elementos secundarios, ninguno de los cuales se puede expandir. Dicen "is_pettable is not a member of lizard" and "see declaration of lizard".

Habilite o deshabilite el diagnóstico estructurado con la opción Proyecto>Propiedades>Avanzadas>Habilitar salida estructurada de MSVC. Para modificar varios proyectos, cree un archivo Directory.Build.props con la propiedad UseStructuredOutput definida como true o false.