TL; DR: ¿Se puede limpiar para el desarrollador la información de tipo que se muestra en el depurador de Visual Studio/Intellisense/compilador de salida para los nombres largos de stl?Ruido reducido en la depuración de los tipos stl
C++, Visual Studio
Considere el código:
std::map<int, int> m;
Considere el tipo información en
La ventana de inspección
Con un ratón sobre en el identificador
Intellisense rápidas (parámetros de un método, la imagen formateados por razones de brevedad)
(como # 3) finalización de IntelliSense para un identificador a medida que escribe el nombre
Cada uno de estos casos está mostrando descripciones de tipo de contenedores STL son mucho lío de detalles con poca frecuencia necesarios.
me he dado cuenta de Visual Studio 2011 está mostrando como string
std::string
(una mejora impresionante), en lugar de std::basic_string<char, std::char_traits<char>, std::allocator<char>>
- pero esto no ocurre para otros tipos de STL que he probado.
Sé por qué está mostrando esa información, sé que la información es correcta, y críticamente importante en algunos casos. Es simplemente mi opinión de que la mayoría de las veces, al desarrollador no le importaría menos y map<int, int>
sería suficiente. ¿Alguna forma de formatear o configurar la salida para reducir el ruido?
Además de estar lejos de un largo nombre de tipo, es uno de los problemas fundamentales de la depuración y errores de C++. No hay nada que pueda omitir sin ocultar información esencial. – pmr
Bonito esquema de color! – Puppy
@pmr Acepto que es información esencial, pero me está diciendo que no sabe (a menos que algunos hayan pirateado los nombres) que 'std :: map' IS 'std :: map , std :: allocator >> '? ¿Tiene que ver eso cada vez porque lo olvidó o no está seguro? Esta no es información esencial que debe ver CADA VEZ. Ese es mi punto. –
payo