0Pricing
C++ Academy · Lección

Variables y parámetros const

Proteja los datos frente a cambios

Variables y parámetros const es una lección gratuita de C++ Academy en CoddyKit. Esta es la lección 1 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.

Declaración de variables const

Una variable const no puede modificarse después de su inicialización. El compilador lo garantiza y detecta las escrituras accidentales.

#include <iostream>

int main() {
    const int maxUsers = 100;
    // maxUsers = 200;   // ERROR
    std::cout << maxUsers << "\n";
}

Parámetros de función const

Marcar como const un parámetro pasado por valor impide que el cuerpo de la función modifique su copia local; sirve como ayuda para documentar y proteger el código.

#include <iostream>

int doubled(const int n) {
    // n = 0;   // ERROR
    return n * 2;
}

int main() { std::cout << doubled(21) << "\n"; }

Parámetros de referencia const

Pasar por const& evita copiar objetos grandes y garantiza que no se modificarán; es la forma habitual de pasar cadenas y contenedores.

#include <iostream>
#include <string>

void printLen(const std::string& s) {  // no copy, no change
    std::cout << s.size() << "\n";
}

int main() { printLen("hello"); }

Puntero a const

const T* significa que no puede cambiar el valor apuntado a través de este puntero, aunque el propio puntero sí puede reasignarse.

#include <iostream>

int main() {
    int a = 1, b = 2;
    const int* p = &a;
    // *p = 5;   // ERROR: value is const
    p = &b;      // OK: pointer can move
    std::cout << *p << "\n";
}

Puntero const

T* const es un puntero constante: no puede reasignarlo, pero sí puede modificar el valor al que apunta.

#include <iostream>

int main() {
    int a = 1;
    int* const p = &a;
    *p = 9;      // OK: value changeable
    // p = nullptr;  // ERROR: pointer is const
    std::cout << *p << "\n";
}

Lectura de declaraciones de derecha a izquierda

Lea las declaraciones con const de derecha a izquierda: const int* const es un "puntero const a un int const"; ni el valor ni el puntero pueden cambiar.

¿Por qué la corrección const?

Usar const siempre que corresponda documenta la intención, evita errores y permite que el compilador optimice el código. Esta disciplina se denomina corrección const.

const permite llamadas desde const

Una función que recibe un const& puede aceptar tanto argumentos const como no const, además de temporales. Una referencia no const no puede vincularse a un temporal.

Una variable local const facilita el razonamiento

Declarar como const las variables locales que no deberían cambiar facilita la lectura del código y evita reasignaciones accidentales.

#include <iostream>

int main() {
    const double rate = 0.2;
    const double total = 100 * (1 + rate);
    std::cout << total << "\n";
}

const de nivel superior en valores

En los parámetros pasados por valor, const de nivel superior no afecta al llamador; solo restringe el cuerpo de la función y suele omitirse en las declaraciones.

Añada const desde el principio

Es mucho más fácil comenzar con corrección const que incorporarla posteriormente. Adquiera el hábito de aplicar const a parámetros, referencias y variables locales de forma predeterminada.

Comprobación rápida

Compruebe cuánto entiende de const.

Repaso

Ha aprendido a usar const en variables, parámetros, referencias y punteros, así como la diferencia entre puntero a const y puntero const. La corrección const documenta la intención, evita errores y permite vincularse a temporales y optimizar el código.

Preguntas frecuentes

¿La lección «Variables y parámetros const» es gratis?

Sí — el texto completo de «Variables y parámetros const» 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 y parámetros const»?

Proteja los datos frente a cambios 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 1 de 4.

¿Cuánto tiempo toma la lección «Variables y parámetros const»?

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. Variables y parámetros const
  2. Funciones miembro const
  3. constexpr y tiempo de compilación
  4. consteval y constinit
← Volver a C++ Academy