visual versiones studio que microsoft logo descargar c++ visual-studio vc6

versiones - ¿Cuáles son las diferencias entre Visual C++ 6.0 y Visual C++ 2008?



visual studio c++ (14)

¿Cuáles son las ventajas / desventajas entre MS VS C ++ 6.0 y MSVS C ++ 2008?

La razón principal para hacer esa pregunta es que todavía hay muchos programadores decentes que prefieren usar la versión anterior en lugar de la versión más nueva.

¿Hay alguna razón por la que pueda preferir a los mayores que a los nuevos?


¿Sabía que la implementación de MSL VC6 del STL no es segura para subprocesos? En particular, la optimización del recuento de referencias en basic_string explota incluso cuando se compila con las bibliotecas de subprocesos múltiples. http://support.microsoft.com/kb/813810


Además del despliegue mencionado anteriormente, la principal ventaja de MSVC 6.0 es la velocidad. Debido a que es un IDE de 10 años, se siente bastante rápido en una computadora moderna. Las versiones más nuevas de Visual Studio ofrecen características más avanzadas, pero tienen un costo (complejidad y velocidad más lenta).

Pero el mayor inconveniente de MSVC 6.0 es su compilador C ++ no conforme: biblioteca y compilador. Si pretendes hacer C ++ serio - Programando esto es un show-stopper. Si solo crea aplicaciones MFC, probablemente no sea un gran problema.


Bueno, para empezar, puede deberse a que los ejecutables creados con MSVS 6 solo requieren msvcrt.dll (tiempo de ejecución de C) que ahora se incluye con Windows.

Los archivos ejecutables de MSVS 2008 necesitan msvcrt9 enviado (o ya instalado).

Además, tiene muchas librerías OSS ya compiladas para Windows 32 bit con el tiempo de ejecución de 6.0 C, mientras que para el tiempo de ejecución C 2008 tiene que tomar la fuente y compilarla usted mismo.

(la mayoría de esas librerías se compilan realmente con MinGW, que también usa el tiempo de ejecución de 6.0 C, quizás esa sea otra razón).


Desde VC6, la mayor parte del enfoque de Visual Studio ha estado en C # y .NET, así como en otras características, por lo que algunos veteranos de C ++ ven a VC6 como los buenos viejos tiempos. Las cosas han mejorado en Visual Studio para desarrolladores de C ++ desde entonces, pero no tan dramáticamente como para los usuarios de .NET.

Una forma en que VS2008 es significativamente mejor que VC6 es que puede construir proyectos C ++ en paralelo. Esto puede dar como resultado compilaciones significativamente más rápidas incluso en un solo sistema de CPU, pero especialmente si tiene múltiples núcleos.


Fuera de mi cabeza, las ventajas del nuevo Visual Studio son:

  • adhesión más estricta a los estándares
  • soporte para x64 / mobile / XBOX targets
  • mejores optimizaciones del compilador
  • (forma) mejor manejo de la plantilla
  • depurador mejorado; posibilidad de ejecutar sesiones remotas de depuración
  • IDE mejorado
  • soporte macro mejorado; El DTE permite el acceso a más métodos y variables IDE

Desventajas:

  • IDE parece más lento
  • Intellisense todavía tiene problemas de rendimiento (reemplazarlo con VisualAssistX puede ayudar)
  • tiempo de ejecución no disponible universalmente
  • la integración del control de fuente no está a la altura (aunque con toda justicia el VC6 carece de esta característica por completo)

Lista rápida de mejoras que verá pasar de 6.0 a 2008:

  • Muchas correcciones de errores
  • Mejor conformidad con el estándar C ++
  • Mejor optimización del compilador
  • UI mejorada (mejor intellisense, etc.)

¡Una cosa que la gente a veces olvida es que VS 6.0 ya tiene más de 10 años! En este punto, no veo cómo alguien querría seguir con eso.


Me gustaría agregar que no es el caso de que las aplicaciones desarrolladas con Visual C ++ 2008 requieran más archivos DLL que los desarrollados con Visual C ++ 6.0. Esa es solo la configuración de proyecto predeterminada.

Si accede a las propiedades de su proyecto, C / C ++, Generación de código, luego cambie su Biblioteca de tiempo de ejecución desde DLL de subprocesos múltiples y DLL de depuración de subprocesos múltiples (configuraciones de liberación y depuración) a Depuración multiproceso y de subprocesos múltiples , su aplicación debería entonces tiene menos dependencias.


Si instala todos los paquetes de servicio para VS6, aún tiene un combo sólido IDE / compilador. Como desarrollador de software que tiene que lanzar productos en la naturaleza (a través de Internet), no deseo enviar los tiempos de ejecución de VC ++ y el framework .NET cada vez (no puedo agruparlos directamente en mi instalador / ejecutable, está prohibido por Microsoft ) Ya sabes, varios megabytes de tiempos de ejecución para ejecutar kilobytes de código son un poco estúpidos. VC ++ 6.0 solo necesita su ejecutable y 2 .DLL en el mejor de los casos.

Además, los tiempos de ejecución de depuración no se pueden distribuir con VC ++ .NET, realmente no es bueno cuando tengo un cliente que necesita depurar mis productos :)

En mi opinión, las principales razones por las que todavía uso VC ++ 6.0, pero el IDE en sí mismo es feo (es decir, no es compatible con tabulaciones). Por lo general, omito las limitaciones de IDE mediante el uso de bloques de código (CodeBlocks admite CL.EXE / LINK.EXE para todas las versiones de VC ++)

Cobolfoo


Una cosa difícil que encontramos fue que el "valor" se convirtió en una palabra clave.


VS2008 tiene un mejor compilador (mucho más compatible con los estándares, mejores optimizaciones, ...).

VS6 tiene un IDE mucho más rápido. VS2008 IDE tiene muchas características agradables, pero es un poco más lento que VS6.


Ventajas de Visual Studio 2008 sobre Visual C ++ 6.0:

  • Compilador de C ++ mucho más compatible con los estándares, con un mejor manejo de la plantilla
  • Soporte para x64 / mobile / XBOX targets
  • Implementación mejorada de STL
  • Soporte para C ++ 0x TR1 (punteros inteligentes, expresiones regulares, etc.)
  • Biblioteca de tiempo de ejecución de Secure C
  • Navegación mejorada por código
  • Depurador mejorado; posibilidad de ejecutar sesiones remotas de depuración
  • Mejores optimizaciones del compilador
  • Muchas correcciones de errores
  • Creaciones más rápidas en sistemas multi-core / multi-CPU
  • Interfaz de usuario IDE mejorada, con muchas características agradables
  • Soporte macro mejorado en el IDE; El DTE permite el acceso a más métodos y variables IDE
  • Biblioteca actualizada de MFC (en VS2008 Service Pack 1)
  • soporte para OPENMP (multihilo fácil) (solo en VS2008 pro.)

Desventajas de pasar a Visual Studio 2008:

  • El IDE es mucho más lento que VS6
  • Intellisense todavía tiene problemas de rendimiento (reemplazarlo con VisualAssistX puede ayudar)
  • Los ensambles uno al lado del otro hacen que la implementación de la aplicación sea mucho más problemática
  • La biblioteca local de MSDN (fuera de línea) es extremadamente lenta
  • Como se menciona aquí , no hay un generador de perfiles en la versión Profesional

En el espíritu de la publicación de blog reciente de Joel, he combinado algunas de las otras respuestas publicadas en una sola respuesta (y he hecho que esta sea una publicación propiedad de la comunidad, por lo que no obtendré ningún representante de ella). Espero que no te moleste. Muchas gracias a Laur, NeARAZ, 17 de 26, me.yahoo.com y a todos los demás que respondieron. - ChrisN


Visual C ++ 2008 es mucho más compatible con los estándares (Visual Studio 6 no es compatible con el estándar C ++ establecido en 1998).


Visual C ++ 6 puede ser muy defectuoso a veces en comparación con 2008. Algunas cosas en particular:

  • Soporte de plantillas / rarezas pobres (por ejemplo sometemplate<othertemplate<t>> no funciona, pero sometemplate< othertemplate<t> >> funcionando)
  • No cumple con los estándares
  • El editor de recursos es basura (las "líneas azules" parecen moverse aleatoriamente, entre otras cosas)
  • Solo admite la edición de ciertos tipos de bitmaps de 8 bits (tengo que usar imagemagick para convertir bitmaps guardados en paint.net para poder verlos en los recursos de las imágenes)
  • Soporte terrible para trabajar con archivos de solo lectura / integración peculiar de sourcessafe.

A veces desarrollar en VS6 es como tratar de hacer que los sitios web se vean bien en Internet Explorer 5.5


Visual C ++ 6.0 se integra completamente con herramientas de seguimiento de memoria, como Purify, HeapAgent, BoundsChecker y MemCheck, ya que esas herramientas de seguimiento de memoria se mantuvieron activamente y se vendieron agresivamente después de que salió Visual C ++ 6.0.

Sin embargo, dado que C ++ ha estado fuera de moda por un tiempo, las compañías que venden herramientas de seguimiento de memoria todavía los venden, pero nunca los actualizan o los integran con nuevas versiones de Visual C ++, incluido Visual Studio 2008. Entonces, usando herramientas de seguimiento de memoria con Visual Studio 2008 es frustrante, erróneo y, en algunos casos, imposible.