C++


C ++ ( / ˌ s i ˌ p l ʌ s p l ʌ s / ) es un lenguaje de programación de propósito general creado por Bjarne Stroustrup como una extensión de la lenguaje de programación C , o "C con clases ". El lenguaje se ha expandido significativamente con el tiempo, y el C++ moderno ahora tiene características genéricas y funcionales orientadas a objetos , además de facilidades para la manipulación de memoria de bajo nivel . Casi siempre se implementa como un lenguaje compilado , y muchos proveedores proporcionan compiladores de C++ , incluidos Free Software Foundation , LLVM , Microsoft , Intel , Oracle e IBM , por lo que está disponible en muchas plataformas. [10]

C++ se diseñó con una orientación hacia la programación de sistemas y el software integrado con recursos limitados y grandes sistemas, con rendimiento , eficiencia y flexibilidad de uso como puntos destacados de su diseño. [11] C ++ también se ha encontrado útil en muchos otros contextos, con fortalezas clave que son la infraestructura de software y las aplicaciones con recursos limitados, [11] que incluyen aplicaciones de escritorio , videojuegos , servidores (por ejemplo , comercio electrónico , búsqueda web o bases de datos ), y aplicaciones críticas para el rendimiento (por ejemplo , conmutadores telefónicos osondas espaciales ). [12]

C++ está estandarizado por la Organización Internacional de Normalización (ISO), con la última versión estándar ratificada y publicada por ISO en diciembre de 2020 como ISO/IEC 14882:2020 (conocido informalmente como C++20 ). [13] El lenguaje de programación C++ se estandarizó inicialmente en 1998 como ISO/IEC 14882:1998 , que luego fue modificado por los estándares C++03 , C++11 , C++14 y C++17 . El estándar C++20 actual los reemplaza con nuevas funciones y una biblioteca estándar ampliada. Antes de la estandarización inicial en 1998, C++ fue desarrollado por el informático danés Bjarne Stroustrup en Bell Labs desde 1979 como una extensión del lenguaje C ; quería un lenguaje eficiente y flexible similar a C que también proporcionara funciones de alto nivel para la organización de programas. [14] Desde 2012, C++ ha estado en un programa de lanzamiento de tres años [15] con C++ 23 como el próximo estándar planificado. [dieciséis]

En 1979, Bjarne Stroustrup , un informático danés , comenzó a trabajar en "C with Classes ", el predecesor de C ++. [17] La motivación para crear un nuevo lenguaje se originó a partir de la experiencia de Stroustrup en programación para su tesis doctoral. Stroustrup descubrió que Simula tenía características que eran muy útiles para el desarrollo de software grande, pero el lenguaje era demasiado lento para el uso práctico, mientras que BCPL era rápido pero de demasiado bajo nivel para ser adecuado para un gran desarrollo de software.Cuando Stroustrup comenzó a trabajar en AT&T Bell Labs , tenía el problema de analizar el kernel de UNIX con respecto a la computación distribuida.Recordando su doctorado experiencia, Stroustrup se dispuso a mejorar el lenguaje C conCaracterísticas similares a Simula . [18] Se eligió C porque era de propósito general, rápido, portátil y ampliamente utilizado. Además de las influencias de C y Simula, otros lenguajes también influyeron en este nuevo lenguaje, incluidos ALGOL 68 , Ada , CLU y ML .

Inicialmente, "C with Classes" de Stroustrup agregó características al compilador de C, Cpre, incluidas clases , clases derivadas , tipado fuerte , argumentos en línea y predeterminados . [19]

En 1982, Stroustrup comenzó a desarrollar un sucesor de C con Clases, al que llamó "C++" ( siendo el operador de incremento en C) después de pasar por varios otros nombres. Se agregaron nuevas funciones, incluidas funciones virtuales , nombre de función y sobrecarga de operadores , referencias , constantes, asignación de memoria de almacenamiento libre con seguridad de tipo (nuevo/eliminar), verificación de tipo mejorada y comentarios de una sola línea de estilo BCPL con dos barras diagonales ( ) . Además, Stroustrup desarrolló un nuevo compilador independiente para C++, Cfront .++//


Bjarne Stroustrup, el creador de C++, en su oficina de AT&T en Nueva Jersey c. 2000
Un cuestionario sobre las características de C++11 que se realizará en París en 2015
Escena durante la reunión del Comité de Normas de C++ en Estocolmo en 1996
El borrador del estándar "Documento de trabajo" que se aprobó como C++98; la mitad de su tamaño se dedicó a la biblioteca estándar de C++.