C++ es un lenguaje de programación de alto nivel y de bajo nivel, es decir, puede estar embebido en microcontroladores o ser usado para programación de sistemas, con una velocidad de respuesta privilegiada y referente para otros lenguajes, de allí su faceta para construir una CLI (Interfaz de Línea de Comandos), incluso juegos. Puede verse como una implementación extendida del lenguaje C con Programación Orientada a Objetos (POO), por lo que se conservan los fundamentos funcionales y de programación estructurada de C.
Suele estar disponible para cada sistema, incluso para móviles (por ejemplo, con el marco de trabajo Qt
, Felgo
, incluso juegos con Real Engine
), siendo popular en el caso de juegos. También puede ser interesante usar C++ como complemento con otros lenguajes (interoperabilidad), logrando así un tiempo de respuesta significativo. Cuando se piensa en una aplicación nativa se tiene de referencia a este lenguaje por su relación con LLVM
(“Low Level Virtual Machine”, máquina virtual de bajo nivel escrita en C++ para posibilitar y optimizar ejecución de otro lenguaje de programación, tal como Kotlin y Dart).
Esta es una referencia ágil para quién tenga nociones de programación o codifique con algún otro lenguaje, también a modo de repaso y uso frecuente. Siendo así, tener esta información como memoria te resultará simple de acceder a los fundamentos, incluso como prueba de concepto sobre el lenguaje.
Para quien tenga habilidades, experticia en programación y/o requiera agilidad en conceptos técnicos, pueden resumirse los siguientes tips esenciales del lenguaje:
int
, double
, float
, bool
, char
, string
, array
. Las variables se definen iniciando con el tipo de datos y luego el nombre.void
si no retorna valor), luego los parámetros van entre paréntesis (...)
iniciando también con el tipo de datos (y separando los parámetros con coma ,
). Además, se usa return
para retornar un valor. La función principal de un programa se denomina main
.{}
. Las sentencias deben terminar siempre con punto y coma ;
.C
, Java
, Javascript
, Kotlin
, es decir que se cuenta con una anatomía cercana para el uso de if
, for
, while
, incluso para el manejo de excepciones (try
).class
. La definición de la clase debe terminar en };
y posteriormente se pueden implementar métodos que consisten en funciones que inicial con el nombre de la clase y ::
.#include <iostream>
using namespace std;
int main()
{
cout << "Hi there!" << endl;
return 0;
}
La línea después de
main
se usa para dirigir la salida (cout
) de una cadena en la pantalla y con un salto de fin de línea al final (endl
).
Se puede declarar variables enunciando el tipo de datos como en el siguiente ejemplo:
char variable = 'A';
int a = 1;
double b = 1.5;
int plus(int a, int b) {
return a + b;
}
// Esto es un comentario de fin de línea
/*
Este es un comentario de bloque
*/
if (i == 1) {
cout << "one" << endl;
}
else if (i == 2) {
cout << "two" << endl;
}
else {
cout << "aha" << endl;
}
int index = 0;
for (index = 0; index < 10; index++) {
cout << index << endl;
}
int i = 0;
while (i < 10) {
i++;
}
try {
...
}
catch (int err) {
...
}
Puedes usar
throw
(por ejemplo:throw (1);
) para forzar el lanzamiento de un error.
La programación orientada a objetos (OOP) tiene su propia base de conceptos que abre un capítulo aparte para su comprensión, se puede decir que se pasa de pensar en funciones a clases que agrupan métodos (funciones) y propiedades (variables), siendo de gran útilidad para la reutilización de código. Como referencia simplemente se presenta la anatomía de una clase.
class Shape {
public:
int sides;
void print();
Shape() {
cout << "Hi there!\n";
}
};
void Shape::print(string name, int sides) {
cout << name << endl;
}
int main() {
Shape shape;
shape.print("square", 4);
return 0;
}
© 2019 by César Arcila