# data[].attributes.body
C++ es el lenguaje de programación diseñado a mediados de los años 1980 por Bjarne Stroustrup.
La intención de su creación fue el extender al lenguaje de programación C,  mecanismos que permiten la manipulación de objetos. El C++ es un lenguaje híbrido.
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.
Una particularidad del C++ es la posibilidad de re definir los operadores, y de poder crear nuevos tipos que se comporten como tipos fundamentales.

# data[].attributes.body
A continuación se cita un programa de ejemplo Hola mundo escrito en C++:

/* Esta cabecera permite usar los objetos que encapsulan los descriptores stdout
y stdin: cout(<<) y cin(>>)*/
#include <iostream>

using namespace std;

int main()
{
    cout << "Hola mundo" << endl;
    return 0;
}

# data[].attributes.body
El 12 de agosto de 2011, Herb Sutter, presidente del comité de estándares de C++, informó la aprobación unánime del nuevo estándar.²​ La publicación del mismo se realizó en algún momento del 2011.

Entre las características del nuevo estándar se pueden destacar:

Funciones lambda;

Referencias rvalue;

La palabra reservada auto;

Inicialización uniforme;

Plantillas con número variable de argumentos.

Además se ha actualizado la biblioteca estándar del lenguaje.

# data[].attributes.body
La continuidad del C++11 es C++14, que es la versión actual, y en el futuro, se estima que a finales de 2017, será C++17

# data[].attributes.body
Operadores Unarios

Operador * (de indirección)

Operador -> (de indirección)

Operador & (de dirección)

Operadores Binarios

Operador ==

Operador +

Operador -

Operadores de Asignación

Operador =

Operador +=

Operador -=

# data[].attributes.body
La sobrecarga de operadores es una forma de hacer polimorfismo. Es posible definir el comportamiento de un operador del lenguaje para que trabaje con tipos de datos definidos por el usuario. No todos los operadores de C++ son factibles de sobrecargar, y, entre aquellos que pueden ser sobrecargados, se deben cumplir condiciones especiales. En particular, los operadores sizeof y :: no son sobrecargables.

No es posible en C++ crear un operador nuevo.

Los comportamientos de los operadores sobrecargados se implementan de la misma manera que una función, salvo que esta tendrá un nombre especial: Tipo de dato de devolución operator<token del operador>(parámetros).