Variáveis, inferência automática de tipos e constexpr
Declare variáveis, use auto para deduzir tipos e aprenda quando marcar valores como constexpr.
Variáveis, inferência automática de tipos e constexpr é uma aula grátis de C++ Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de C++ Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de C++ Academy inclui 4 aulas no total.
O que é uma variável?
Uma variável é uma região nomeada da memória com um tipo. O tipo determina quantos bytes ela ocupa e como os bits são interpretados.
Declarando com tipos explícitos
A forma clássica: type name = value;
int age = 30;
double pi = 3.14159;
char grade = 'A';
bool isReady = true;A palavra-chave auto
Desde o C++11, o compilador pode deduzir o tipo a partir do inicializador. Use auto para deixar o código mais limpo, especialmente com iteradores ou modelos.
auto count = 42; // int
auto price = 9.99; // double
auto name = std::string("Ada"); // std::stringQuando auto ajuda
Use auto quando:
- O tipo for longo (iteradores, modelos)
- Você quiser evitar conversões implícitas
- O tipo decorrer diretamente do inicializador
Quando evitar auto
Evite auto quando o tipo deduzido não for óbvio para quem lê o código. Para literais numéricos, um tipo explícito geralmente documenta melhor a intenção.
const: variáveis somente para leitura
Marque com const as variáveis que nunca devem mudar. O compilador garante isso.
const int MAX_USERS = 100;
const double TAX_RATE = 0.18;constexpr: constantes em tempo de compilação
constexpr vai além de const — o valor precisa ser conhecido em tempo de compilação. O compilador pode usá-lo onde constantes em tempo de compilação forem necessárias.
constexpr int BUFFER_SIZE = 1024;
constexpr double PI = 3.14159265358979;Funções constexpr
As funções também podem ser marcadas com constexpr se cada etapa puder ser calculada em tempo de compilação. Chamá-las com argumentos constantes produz um resultado em tempo de compilação.
constexpr int square(int x) { return x * x; }
constexpr int area = square(5); // computed at compile timeFormas de inicialização
O C++ tem várias sintaxes de inicialização. Prefira a inicialização com chaves no código moderno — ela rejeita conversões que reduzem a precisão.
int a = 10; // copy init
int b(10); // direct init
int c{10}; // brace init (preferred)
int d = {10}; // copy-list initRedução de precisão e inicialização com chaves
A inicialização com chaves protege você contra truncamentos acidentais. O exemplo abaixo não compila.
double d = 3.7;
int a = d; // OK, silently truncates to 3
int b{d}; // ERROR: narrowing conversionEscopo de uma variável
Uma variável existe desde sua declaração até o final do bloco que a contém (um par de { }). Declare as variáveis no escopo mais restrito possível — isso limita o tempo de vida delas e reduz os erros.
Verificação rápida
Qual declaração cria um valor que o compilador pode usar como constante em tempo de compilação?
Recapitulação
Declare variáveis com um tipo explícito ou com auto para obter a dedução. Use const para valores somente para leitura e constexpr para constantes em tempo de compilação. Prefira a inicialização com chaves para detectar reduções de precisão.
Perguntas Frequentes
A aula “Variáveis, inferência automática de tipos e constexpr” é grátis?
Sim — o texto completo de “Variáveis, inferência automática de tipos e constexpr” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de C++ Academy, atualize para CoddyKit PRO. O curso de C++ Academy inclui 4 aulas no total.
O que vou aprender em “Variáveis, inferência automática de tipos e constexpr”?
Declare variáveis, use auto para deduzir tipos e aprenda quando marcar valores como constexpr. Você pratica C++ Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar C++ Academy?
Nenhuma experiência prévia é necessária. C++ Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.
Quanto tempo leva a aula “Variáveis, inferência automática de tipos e constexpr”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de C++ Academy?
Sim. Cada aula de C++ Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Configurando um compilador C++
- Olá, mundo e processo de compilação
- Variáveis, inferência automática de tipos e constexpr
- Operadores básicos e conversão de tipos