Historia de C++ C++ es un ejemplo de lenguaje de programación compilacion y multiparadigmo. principalmente de tipo imperativo y orientado a objetos, incluyendo también programación genérica y funcional, este fue desarrollado en 1980 por Bjarne Stroustroup en los laboratorios At&T como una extensión orientada a objetos del lenguaje C. La implementación del hardware en la mayoría de ordenadores se diseñó para ejecutar un código máquina escrito en forma imperativa: • las variables son posiciones de memoria • las sentencias son instrucciones C++ significa incremento de C, y el motivo de este nombre es porque el lenguaje C tiene el operador ++ con ese nombre Por lo mismo, el código fuente escrito en C se puede compilar como C++. Esto fue una ventaja durante los primeros años, pero a lo largo del tiempo se convertido en una debilidad pues, para garantizar la compatibilidad, ha mantenido algunos de los defectos del lenguaje C. El lenguaje C fue creado por Dennis Ritchie entre los años 1970-73. D. Ritchie fue cocreador junto a Ken Thompson del sistema operativo UNIX. En 1983, se denominó C ++ e incluía algunas características complementarias, como clases, herencia, alineación, argumentos de funciones predeterminadas, polimorfismo, encapsulación y verificación de tipos fuerte. Ejemplos de programas escritos en C/C++ son los sistemas operativos Windows, Mac OS X y Linux, el navegador/buscador Google Chrome, Adobe Acrobat, la página de Amazon, Autodesk, Facebook, Microsoft Office, la suite de programas Mozilla, FIFA EA Sports, Fortnite, etc. Muchos de los archivos de cabecera de las bibliotecas estándar de C++ que empiezan por c, como <cmath>, son prácticamente idénticos a los de las bibliotecas del Lenguaje C que se usaban con la extensión .h, como por ejemplo: math.h. La intención de su creación fue extender al lenguaje de programación C y añadir mecanismos que permiten la manipulación de objetos. En ese sentido, desde el punto de vista de los lenguajes orientados a objetos, C++ es un lenguaje híbrido. Su ultima versión estableISO/IEC 14882:2017 (C++17) fue desarrollada el15 de diciembre de 2017. Se fueron añadieron facilidades de programación genérica, que se sumaron a los paradigmas de programación estructurada y programación orientada a objetos. Por esto se suele decir que el C++ es un lenguaje de programación multiparadigma. Actualmente existe un estándar, denominado ISO C++, al que se han adherido la mayoría de los fabricantes de compiladores más modernos. Existen también algunos intérpretes, tales como ROOT. El nombre "C++" fue propuesto por Rick Mascitti en el año 1983, cuando el lenguaje fue utilizado por primera vez fuera de un laboratorio científico. Antes se había usado el nombre "C con clases". En C++, la expresión "C++" significa "incremento de C" y se refiere a que C++ es una extensión de C. • Su sintaxis es heredada del lenguaje C. • Programa orientado a objetos (POO). • Permite la agrupación de instrucciones. • Es portátil y tiene un gran número de compiladores en diferentes plataformas y sistemas operativos. • Permite la separación de un programa en módulos que admiten compilación independiente. • Es un lenguaje de alto nivel. En 2011 C++11 inauguró una nueva era en la historia de C++, iniciando un ciclo trienal de lanzamiento de nuevas versiones. Como: C++11, C++14, C++17, C++20 y C++23. Los compiladores intentan adelantarse incorporando de manera experimental algunas novedades antes de los lanzamientos oficiales. Pero cada nueva versión de C++ incluye tal cantidad de agregados que los compiladores más adelantados no suelen terminar de incorporarlos hasta dos o tres años después del lanzamiento de esa versión. A pesar de su adopción generalizada, muchos programadores han criticado el lenguaje C ++, ya que los problemas incluyen una falta de reflexión y tiempos de compilación lentos, perceived feature creep y mensajes de error detallados. Para evitar los problemas que existen en C ++, y para aumentar la productividad, algunas personas sugieren lenguajes alternativos más recientes que C ++, como D, Go, Rust y Vala.