En C++, los parámetros son variables definidas que una función puede recibir cuando es invocada.
Los parámetros hacen que las funciones sean más flexibles y reutilizables al permitir el paso de diferentes datos a una misma función.
Si quieres aprender más sobre Parámetros de funciones
consulta el Curso de Introducción a la Programación leer más ⯈
Parámetros por valor y por referencia
Parámetros por valor
Los parámetros por valor pasan una copia del valor original a la función. Cualquier modificación realizada en el parámetro dentro de la función no afectará al argumento original.
void funcion(int x)
{
x = x * 2; // Modifica la copia local de x
}
Parámetros por referencia
Los parámetros por referencia pasan una referencia al argumento original a la función. Cualquier modificación realizada en el parámetro dentro de la función afectará al argumento original.
void funcion(int &x)
{
x = x * 2; // Modifica el argumento original
}
Parámetros por puntero
Los parámetros por puntero pasan la dirección de memoria del argumento original a la función. La función puede acceder y modificar el valor del argumento original a través del puntero.
void funcion(int *ptr)
{
*ptr = *ptr * 2; // Modifica el valor apuntado por ptr
}
Parámetros constantes
A veces, queremos que una función reciba un parámetro por referencia (para evitar tener que copiarlo), pero queremos asegurarnos de que el valor no se modifique. Para esto usamos const
.
#include <iostream>
void MostrarValor(const int &numero) {
std::cout << "Valor: " << numero << std::endl;
}
int main() {
int valor = 5;
MostrarValor(valor); // Muestra 5
return 0;
}
Parámetros opcionales
En C++, los parámetros opcionales se pueden lograr usando valores predeterminados en la declaración de la función. Si un argumento no se pasa al llamar a la función, se usa el valor predeterminado.
#include <iostream>
void Saludar(const std::string &nombre = "Mundo") {
std::cout << "Hola, " << nombre << "!" << std::endl;
}
int main() {
Saludar(); // Muestra "Hola, Mundo!"
Saludar("Juan"); // Muestra "Hola, Juan!"
return 0;
}
Parámetros variádicos
C++ admite parámetros variádicos mediante el uso de plantillas y la biblioteca <cstdarg>
. Los parámetros variádicos permiten a una función aceptar un número variable de argumentos.
#include <iostream>
#include <cstdarg>
void ImprimirNumeros(int cantidad, ...) {
va_list args;
va_start(args, cantidad);
for (int i = 0; i < cantidad; ++i) {
int numero = va_arg(args, int);
std::cout << numero << " ";
}
va_end(args);
std::cout << std::endl;
}
int main() {
ImprimirNumeros(5, 1, 2, 3, 4, 5); // Muestra 1 2 3 4 5
return 0;
}