Salte la navegación

C++

C++
Paradigma: multiparadigma: orientado a objetos, imperativo, programación genérica.
Apareció en: 1983
Diseñado por: Bjarne Stroustrup
Tipo de dato: fuerte, estático
Implementaciones: GNU Compiler Collection, Microsoft Visual C++, Borland C++ Builder, Dev-C++, C-Free
Dialectos: ISO C++, ANSI C++ 1998, ANSI C++ 2003
Influido por: C, Simula
Ha influido: Ada, C#, Java, PHP, D, Perl
 

El C++ (pronunciado “ce más más” o “ce plus plus”) es un lenguaje de programación, diseñado a mediados de los años 1980, por Bjarne Stroustrup, como extensión del lenguaje de programación C.

Se puede decir que C++ es un lenguaje que abarca tres paradigmas de la programación: la programación estructurada, la programación genérica y la programación orientada a objetos.

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 como ROOT (enlace externo). Las principales características del C++ son las facilidades que proporciona para la programación orientada a objetos y para el uso de plantillas o programación genérica (templates).

Además posee una serie de propiedades difíciles de encontrar en otros lenguajes de alto nivel:

  • Posibilidad de redefinir los operadores (sobrecarga de operadores)
  • Identificación de tipos en tiempo de ejecución (RTTI)

C++ está considerado por muchos como el lenguaje más potente, debido a que permite trabajar tanto a alto como a bajo nivel, sin embargo es a su vez uno de los que menos automatismos trae (obliga a hacerlo casi todo manualmente al igual que C) lo que “dificulta” mucho su aprendizaje.

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.

 

Un ejemplo de programa en C++, el clásico Hola Mundo

A continuación se cita un programa de ejemplo un “Hola mundo” escrito en C++:

#include <iostream>   // Esta librería permite el uso de cout(<<) y de cin(>>)

using namespace std;

int main()
{
    cout << "¡Hola mundo!" << endl;
}

Al usar la directiva #include estamos diciendole al compilador que busque determinadas cosas en un archivo que se llama iostream.h , antes en c siempre habia que poner el .h al final de los archivos, ahora en c++ el compilador se encarga de buscarlos solo. Para evitar redefinir cosas ya hechas al ponerles igual nombre, se creo algo llamado espacios de nombres o namespace en el singular del ingles, en este caso hay un espacio de nombres llamado std que es donde se incluyen las definiciones entre muchas otras cosas de los operadores cin y cout necesarios para la entrada y salida de datos por el dispositivo estandar, tipicamente pantalla o teclado, y todo esto es exactamente lo que decimos al añadir la sentencia using namespace std. La definicion de funciones es igual que en c, salvo por la caracteristica que si main no va a recoger argumentos, no tenemos porque ponerselos, a diferencia de c que habia q ponerlos explicitamente aunque no se fueran a usar. Queda solo comentar que el simbolo ‘<<’ se conoce como operador de insercion, y a grosso modo esta enviando a cout lo que queremos mostrar por pantalla para que lo pinte, en este caso la cadena “¡Hola mundo!” . El mismo operador << se puede usar varias veces en la misma sentencia, de forma que gracias a esta caracteristica podemos poner un caracter endl al final, que es el equivalente del \n en el c o \n\r segun el sistema en que se este programando.

Deja un comentario

Fill in your details below or click an icon to log in:

Logo de WordPress.com

You are commenting using your WordPress.com account. Log Out / Cambiar )

Twitter picture

You are commenting using your Twitter account. Log Out / Cambiar )

Facebook photo

You are commenting using your Facebook account. Log Out / Cambiar )

Connecting to %s

Seguir

Get every new post delivered to your Inbox.