Au

Auto em C++

1 exercício

Sobre Auto

A palavra-chave auto em C++

Em C++, a palavra-chave auto é um recurso poderoso introduzido no C++11, usada para declarar variáveis com um tipo de dado inferido. O compilador deduz o tipo da variável a partir do seu inicializador, o que pode deixar o código mais legível e mais fácil de manter.

Exemplo de uso

Considere o exemplo a seguir, em que auto é usado para declarar variáveis:

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

Em cada caso, o tipo da variável é inferido a partir do valor com que ela é inicializada.

Inferência de tipos

A palavra-chave auto ajuda a escrever um código mais conciso e legível, reduzindo a verbosidade dos 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");

Neste laço, auto deduz o tipo de purple_wedding_pie como std::vector<std::string>, evitando a necessidade de especificar o tipo de novo explicitamente.

Compatibilidade

A palavra-chave auto é compatível com várias construções do C++, o que a torna uma ferramenta versátil na programação moderna em 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.

Em conceitos posteriores, veremos com frequência a palavra-chave auto com expressões lambda, laços for baseados em intervalo e iteradores.

Casos de uso

  • Programação genérica: auto é especialmente útil em cenários de programação genérica, nos quais os tipos podem ser complexos ou envolver templates.
  • Tipos de dados complexos: ao lidar com tipos de dados complexos ou nomes de tipo longos, auto reduz a poluição visual e melhora a manutenibilidade do código.
  • Algoritmos baseados em iteradores: auto simplifica o uso de iteradores em algoritmos, o que melhora a legibilidade do código.
Editar via GitHub O link abre em uma nova janela ou aba

Aprenda Auto

A prática está bloqueada

Desbloqueie mais 1 exercício para praticar Auto