Compilar y ejecutar códigos C++ 11 en Dev C++
Esta breve guía trata sobre la compilación de códigos C++ 11 con Dev C++.
La versión C++ 11
C++ 11 es la nueva versión de C++ después de C++ 3. Fue lanzado el 12 de agosto de 2011, luego de la aprobación de la Organización Internacional de Normalización (ISO).
Esta nueva versión de C++ agrega un conjunto completo de nuevas funciones en C++. Sin embargo, el uso de nuevas funciones es elección de los usuarios.
No obstante, algunas de las funciones son muy útiles y hacen que la programación en C++ sea más interesante.
Los objetivos principales de C++ 11 caracterizados por Bjarne Stroustrup son:
- Aumente las fortalezas de C++. En lugar de extender C++ para agregar algunas funciones nuevas que pueden permitir la creación de aplicaciones GUI pesadas (que es el área más débil de C++), la atención se centra en mejorar lo que ya hace.
- Haga que C++ sea más fácil de aprender y usar. Proporciona funcionalidades que hacen que C++ sea más consistente y fácil.
El comité que reunió las características de C++ 11 siguió algunos de los principios fundamentales, que son:
- Haga que C++ 11 sea compatible con versiones anteriores de C++, de modo que los programas que funcionan con versiones anteriores generalmente funcionen con C++ 11.
- En lugar de agregar más extensiones al lenguaje central, pusieron un paquete de cambios en la biblioteca estándar.
- Se centraron en mejorar los mecanismos de abstracción (clases, plantillas).
- Agregaron características tanto para las nuevas entradas como para los expertos en programación de C++, brindando algo para cada grupo de desarrolladores.
- Aumentó la seguridad de tipo de lenguaje para evitar errores y fallas no intencionales.
- Mejoró el rendimiento de C++, permitiéndole trabajar directamente con el hardware.
Características de C++ 11
C++ 11 no es una gran migración de C++ 03, pero agregó algunas características nuevas importantes. Discutiremos algunos de ellos aquí.
- Función de deducción de tipo: C++ 11 introdujo una nueva palabra clave
auto
para deducir automáticamente el tipo de datos de la variable definido por el valor del inicializador.
auto num1 = 5;
int num2 = 10;
Como hemos inicializado num1
con un número entero, el tipo de num1
será int
. Del mismo modo, el auto
también puede deducir el tipo de variable utilizando otra variable como inicializador.
Ejemplo:
int a = 5;
auto b = a;
En este código, b
se inicializará con el valor de a
, y su tipo se establecerá como a
que es int
. Las variables que no se inicializan con un valor también se pueden configurar usando decltype
.
Ejemplo:
int var1 = 0;
decltype(var2) var1;
No inicializamos var2
con ningún valor, pero su tipo de datos será el mismo que var1
. Aunque la deducción de tipos es una característica poderosa de C++ 11, solo se recomienda cuando no se puede especificar el tipo o cuando el uso del mecanismo de deducción de tipos mejora la eficiencia o la legibilidad del código.
- Inicialización uniforme de variables: C++ 11 introdujo un nuevo método para inicializar una variable usando llaves
{}
. Tenga en cuenta que los métodos anteriores de inicialización aún funcionan en C++ 11.
identificador de tipo {valor_inicial};
Ejemplo:
int x{0}; // This will initialize `x` with 0.
- Bucles
for-each
: hemos visto que el buclefor
itera a través de los elementos del arreglo, pero existe la posibilidad de error en el incremento o la condición. El buclefor-each
se ha introducido para iterar a través de matrices para aliviar esta dificultad.
Sintaxis:
for (element_declaration : array) statement;
Ejemplo:
#include <iostream>
using namespace std;
int main() {
int evens[]{0, 2, 4, 6, 8, 10, 12, 14};
for (int num : evens) {
cout << num << ' ';
}
cout << '\n';
return 0;
}
Producción :
0 2 4 6 8 10 12 14
También podemos usar el tipo auto
en este ciclo para mayor facilidad.
Ejemplo:
#include <iostream>
using namespace std;
int main() {
int evens[]{0, 2, 4, 6, 8, 10, 12, 14};
for (auto num : evens) {
cout << num << ' ';
}
cout << '\n';
return 0;
}
Este es el caso ideal para utilizar el mecanismo de deducción de tipos. Cualquiera que sea el tipo de matriz, se establecerá para la variable iteradora.
Se introduce un conjunto de funciones nuevas en C++ 11, pero aquí hemos discutido algunas de las funciones más utilizadas.
De manera similar, se agregaron muchas clases nuevas a la biblioteca estándar de C++, que son:
- Almacenamiento local de subprocesos y subprocesos múltiples
- tablas hash
- Generación de números aleatorios
- Envolturas de referencia
- Expresiones regulares
std::tuple
std::unique_ptr
Instale Dev C++ para compilar y ejecutar códigos C++ 11
El compilador Dev C++ tiene su propio entorno de desarrollo integrado (IDE) específico para escribir, depurar y ejecutar programas C++. Está empaquetado con un editor de texto eficiente para escribir y editar programas y un compilador de C++.
Este editor de texto tiene funciones limitadas que le permiten escribir un programa, modificarlo y guardarlo en el espacio de almacenamiento de su disco. Dev C++ proporciona un editor y compilador no solo para C++ sino también para C.
Después de descargar e instalar Dev C++, debería tener la siguiente ventana:
Ahora puede crear un nuevo proyecto yendo a Archivo->Nuevo->Proyecto
como se muestra en la imagen a continuación:
Desde la nueva ventana, seleccione Aplicación de consola
. Esto creará un nuevo proyecto donde puede agregar archivos fuente para la programación en C++.
De manera predeterminada, se crea un único archivo fuente, main.cpp
. Para C++ 11, primero debe configurar su compilador. Para ello, vaya a Herramientas->Opciones del compilador
.
Vaya a la pestaña Configuración
, luego a la pestaña Generación de código
. En el menú Language Standard
, seleccione ISO C++11
.
Ahora está listo para compilar código C++ 11 en Dev C++. Ahora puede escribir el código en su archivo principal ya creado para usted y compilar el código presionando la tecla F11, que compilará y ejecutará el código por usted.
Entonces, hemos visto que Dev C++ es un compilador fácil de usar con las últimas funcionalidades de C++ 11 disponibles. Podemos compilar y ejecutar rápidamente códigos C++ 11 usando Dev C++.
Si no encuentra la opción para C++ 11 en el último paso, asegúrese de haber descargado la última versión de Dev C++.
Husnain is a professional Software Engineer and a researcher who loves to learn, build, write, and teach. Having worked various jobs in the IT industry, he especially enjoys finding ways to express complex ideas in simple ways through his content. In his free time, Husnain unwinds by thinking about tech fiction to solve problems around him.
LinkedIn