0Pricing
C++ Academy · Lección

Variables, inferencia automática de tipos y constexpr

Declare variables, utilice auto para deducir tipos y aprenda cuándo marcar valores como constexpr.

Variables, inferencia automática de tipos y constexpr es una lección gratuita de C++ Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de C++ Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de C++ Academy incluye 4 lecciones en total.

¿Qué es una variable?

Una variable es una región de memoria con nombre y un tipo. El tipo determina cuántos bytes ocupa y cómo se interpretan sus bits.

Declarar con tipos explícitos

La forma clásica es: type name = value;

int age = 30;
double pi = 3.14159;
char grade = 'A';
bool isReady = true;

La palabra clave auto

Desde C++11, el compilador puede deducir el tipo a partir del inicializador. Use auto para escribir código más limpio, especialmente con iteradores o plantillas.

auto count = 42;          // int
auto price = 9.99;        // double
auto name = std::string("Ada");  // std::string

Cuándo resulta útil auto

Use auto cuando:

  • El tipo es largo (iteradores, plantillas)
  • Desea evitar conversiones implícitas
  • El tipo se deduce directamente del inicializador

Cuándo evitar auto

Evite auto cuando el tipo deducido no sea evidente para quien lee el código. En el caso de los literales numéricos, un tipo explícito suele documentar mejor la intención.

const: variables de solo lectura

Marque con const las variables que nunca deban cambiar. El compilador lo impone.

const int MAX_USERS = 100;
const double TAX_RATE = 0.18;

constexpr: constantes en tiempo de compilación

constexpr va más allá que const: el valor debe conocerse en tiempo de compilación. El compilador puede usarlo donde se requieran constantes en tiempo de compilación.

constexpr int BUFFER_SIZE = 1024;
constexpr double PI = 3.14159265358979;

Funciones constexpr

Las funciones también pueden marcarse como constexpr si cada paso puede calcularse en tiempo de compilación. Al llamarlas con argumentos constantes, producen un resultado en tiempo de compilación.

constexpr int square(int x) { return x * x; }

constexpr int area = square(5);  // computed at compile time

Formas de inicialización

C++ tiene varias sintaxis de inicialización. En el código moderno, prefiera la inicialización con llaves: rechaza las conversiones que reducen el rango.

int a = 10;        // copy init
int b(10);         // direct init
int c{10};         // brace init (preferred)
int d = {10};      // copy-list init

Reducción de rango e inicialización con llaves

La inicialización con llaves le protege de truncamientos accidentales. El ejemplo siguiente no compila.

double d = 3.7;
int a = d;     // OK, silently truncates to 3
int b{d};      // ERROR: narrowing conversion

Ámbito de las variables

Una variable existe desde su declaración hasta el final del bloque que la contiene (un par de { }). Declare las variables en el ámbito más limitado posible: así limita su tiempo de vida y reduce los errores.

Comprobación rápida

¿Qué declaración crea un valor que el compilador puede usar como constante en tiempo de compilación?

Repaso

Declare variables con un tipo explícito o con auto para permitir la deducción. Use const para valores de solo lectura y constexpr para constantes en tiempo de compilación. Prefiera la inicialización con llaves para detectar reducciones de rango.

Preguntas frecuentes

¿La lección «Variables, inferencia automática de tipos y constexpr» es gratis?

Sí — el texto completo de «Variables, inferencia automática de tipos y constexpr» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de C++ Academy, actualiza a CoddyKit PRO. El curso de C++ Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Variables, inferencia automática de tipos y constexpr»?

Declare variables, utilice auto para deducir tipos y aprenda cuándo marcar valores como constexpr. Practicas C++ Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar C++ Academy?

No se requiere experiencia previa. C++ Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.

¿Cuánto tiempo toma la lección «Variables, inferencia automática de tipos y constexpr»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de C++ Academy?

Sí. Cada lección de C++ Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Configuración de un compilador de C++
  2. Hello World y proceso de compilación
  3. Variables, inferencia automática de tipos y constexpr
  4. Operadores básicos y conversión de tipos
← Volver a C++ Academy