Au

Auto en C++

1 ejercicio

Acerca de Auto

La palabra clave auto en C++

En C++, la palabra clave auto es una funcionalidad poderosa introducida en C++11, que se usa para declarar variables con un tipo de dato inferido. El compilador deduce el tipo de la variable a partir de su inicializador, lo que puede hacer que el código sea más legible y más fácil de mantener.

Ejemplo de uso

Considera el siguiente ejemplo, donde se usa auto para declarar variables:

auto dragon_population{3};          // dragon_population is deduced as an integer
auto westeros{7.7777};              // westeros is deduced as a double
auto wedding_location{"The Twins"}; // wedding_location is deduced as a const char*, not std::string

En cada caso, el tipo de la variable se infiere a partir del valor con el que se inicializa.

Inferencia de tipos

La palabra clave auto ayuda a escribir código más conciso y legible al reducir la verbosidad de los tipos explícitos.

const std::vector<std::string> pigeon_pie{"flour", "butter", "pigeon", "salt"};
auto purple_wedding_pie{pigeon_pie};
purple_wedding_pie.emplace_back("the strangler");

En este bucle, auto deduce el tipo de purple_wedding_pie como std::vector<std::string>, lo que evita tener que especificar el tipo de nuevo de forma explícita.

Compatibilidad

La palabra clave auto es compatible con diversas construcciones de C++, lo que la convierte en una herramienta versátil en la programación moderna en C++.

auto& element{array[0]};           // reference to an element
const auto object{otherObject};    // const type version of otherObject's type
auto* ptr{&x};                     // pointer to x with the same type as x, but as a pointer.

En conceptos posteriores veremos a menudo la palabra clave auto con expresiones lambda, bucles for basados en rangos e iteradores.

Casos de uso

  • Programación genérica: auto es especialmente útil en escenarios de programación genérica donde los tipos pueden ser complejos o estar relacionados con plantillas.
  • Tipos de datos complejos: cuando trabajas con tipos de datos complejos o nombres de tipo largos, auto puede reducir el desorden y mejorar el mantenimiento del código.
  • Algoritmos basados en iteradores: simplifica el uso de iteradores en los algoritmos y mejora la legibilidad del código.
Editar en GitHub El enlace se abre en una ventana o pestaña nueva

Aprende Auto

La práctica está bloqueada

Desbloquea 1 ejercicio más para practicar Auto