Sobes.tech
Junior — Middle

¿Qué mejoras se introdujeron en el lenguaje C++ con la aparición del estándar C++11?

sobes.tech AI

Respuesta de la IA

El estándar C++11 introdujo muchas mejoras y nuevas características, entre ellas:

  • Inferencia automática de tipos (auto) — simplifica la declaración de variables.
  • Punteros inteligentes (std::unique_ptr, std::shared_ptr) — para gestionar de forma segura la memoria dinámica.
  • Expresiones lambda — permiten escribir funciones anónimas directamente en el lugar de uso.
  • Expresiones constantes (constexpr) — cálculos en tiempo de compilación.
  • Bucles basados en rangos (range-based for) — simplifican la iteración sobre elementos de colecciones.
  • Programación multihilo — se introdujeron hilos estándar (std::thread), mutexes y otros mecanismos de sincronización.
  • Semántica de movimiento y referencias rvalue — optimización en la transferencia de recursos.
  • Tipos de tamaño fijo (<cstdint>) — para un control más preciso sobre los tipos.

Ejemplo de expresión lambda:

#include <iostream>
#include <vector>

int main() {
    std::vector<int> v = {1, 2, 3, 4, 5};
    int sum = 0;
    std::for_each(v.begin(), v.end(), [&sum](int n) { sum += n; });
    std::cout << "Suma: " << sum << std::endl;
    return 0;
}