Variables y constantes en C++. Asignación de valores, uso de #define y const en C++

Las variables son altamente imprescindibles al momento de programar, de hecho sería imposible conseguir una aplicación con una funcionalidad básica sin usar variables; por esta misma razón es necesario aprender a usarlas bien y lo tenemos muy fácil, pues su uso es bastante sencillo e intuitivo, tanto para declararlas como para asignarles valores.

Las variables son posiciones en memoria donde estarán guardados los diferentes valores que le damos o que toman duranet ejecución los datos que usamos y normalmente estarán disponibles a lo largo de la ejecución de nuestro programa. Para asignar valores a una variable en una gran variedad de lenguajes que incluye a C++ se usa el operador "=" seguido del valor que le daremos a la variable (no todos usan el "=" para esto). Veamos un ejemplo completo con todos los posibles usos que le damos a una variable.

	
#include <iostream>
using namespace std;

int main()
{
	char x = 'a'; // Declaramos y asignamos en la misma línea
    
    int num; //Declaramos el entero en una línea
    num = 5; //Le asignamos un valor en otra línea
    
    int num2 = 8; //Asignacion y declaracion al tiempo
    
    float numero; //Un numero decimal
    numero = 3.5; //Le asignamos un valor al decimal
    
    float res = numero + num2; //Sumamos dos variables y las asignamos a res
    //3.5 + 8 = 11.5
    
    res = res + num; //Al valor actual de res le sumamos el valor de num
    //11.5 + 5 = 16.5
    
    bool valor = false; //Variable booleana
    valor = true; // Pueden ser true o false

    res = res*2; //Duplicamos el valor de res 16.5*2 = 33
    
    cout << res << endl; //Mostramos el valor de res por pantalla
   
	return 0;
}
	

En el código anterior hemos visto las multiples formas en que se puede declarar una variable, cómo asignarle un valor, incluso vimos que es posible asignarle el valor de una variable a otra, o realizar operaciones entre los valores de variables y asignar el resultado a una variable nueva, vimos que es posible usar el valor de una misma variable y cambiar su propio valor (res = res*2).

Ahora hablemos de las constantes en C++.

Constantes en C++, const y #define

Las datos constantes, mal llamadas por algunos "variables constantes" (realmente no son variables) tienen un valor fijo durante toda la ejecución del programa, es decir, este valor no cambia ni puede ser cambiado a lo largo de la ejecución de nuestro programa. Las constantes son muy útiles para especificar el tamaño de un vector y para algunas otras cosas, como facilidad de uso y confiabilidad del código. Para declarar una constante, se hace despues de declarar las librerías y antes de las funciones, la sintaxis es la siguiente: #define nombre_constante valor. Veamos algunos detalles y luego unos ejemplos sencillos del uso de las constantes en C++

En C++ se pueden definir constantes de dos forma, ambas válidas para nosotros. La primera es por medio del comando #define nombre_constante valor y la segunda es usando la palabra clave const, veamos ahora cada una de estas formas en detalle.

Uso de #define para declarar constantes en C++

La instrucción #define nos permite declarar constantes (y algunas cosas más) de una manera rápida y sencilla. Hay que tener en cuenta que al declarar constantes con #define debemos hacerlo despues de los #include para importar librerías pero antes de declarar nuestras funciones y demás. Veamos un ejemplo:

Ejemplo de uso de #define en C++ para declarar constantes

	
#include <iostream>
using namespace std;

#define PI 3.1416; //Definimos una constante llamada PI

int main()
{
	cout << "Mostrando el valor de PI: " << PI;
   
	return 0;
}
	

Notemos que ha sido bastante fácil, sin embargo no todo es bueno. Realmente al usar la instrucción #define en C++ no estámos creando una constante realmente, estamos creando una expresión y por tal motivo hay algunas cosas que se complican, veamos:

	
#include <iostream>
using namespace std;

#define PI 3.1416; //Definimos una constante llamada PI

int main()
{
	cout << "Mostrando el valor de PI: " << PI << endl;
   
	return 0;
}
	

Si intentamos ejecutar el código anterior obtendremos un error al haber usado el operador << justo despues de PI, esto sucede porque PI no es tratado exactamente como una variable cualquiera sino como una expresión, así que realmente aunque podemos usar #define para declarar constantes no es la mejor opción.

Veamos ahora cual es realmente la forma más adecuada de declarar constantes en C++, esto se hace por medio de la instrucción const, veamos:

Uso de const para declarar constantes en C++

La instrucción const nos permite declarar constantes de una manera más adecuada y acorde. Las constantes declaradas con const poseen un tipo de dato asociado (como debería ser siempre) y se declaran al interior de nuestro código como un tipo cualquiera. Veamos un ejemplo:

Ejemplo de uso de const en C++ para declarar constantes

	
#include <iostream>
using namespace std;

int main()
{
	const float PI  = 3.1416; //Definimos una constante llamada PI
	cout << "Mostrando el valor de PI: " << PI << endl;
   
	return 0;
}
	

Notemos que de igual forma ha sido bastante fácil y mejor aún ha sido mucho más intuitivo y sencillo para nosotros. Se puede ver que la declaración es muy similar a la de una variable cualquiera y que ya no tenemos complicaciones al intentar añadir la instrucción endl para agregar el salto de línea. Veamos que realmente la variable no puede cambiar:

	
#include <iostream>
using namespace std;

int main()
{
	const float PI  = 3.1416; //Definimos una constante llamada PI
	cout << "Mostrando el valor de PI: " << PI << endl;
 	PI = 2; //Esto generará un error pues PI es de solo lectura (constante)  
	return 0;
}
	

Si intentamos ejecutar el código anterior obtendremos un error al intentar cambiarle el valor a PI, pues lo hemos definido como una constante y el lenguaje no nos permitirá cambiarle en ningún momento el valor.

Muy bien eso ha sido todo en esta sección, espero haber sido lo más claro posible y que se haya entendido a la perfección. No olvides dejar tus comentarios en la sección de comentarios.

La última actualización de este artículo fue hace 1 año