Funciones C++
Funciones C++
En este tutorial, aprenderemos sobre la función C++ y las expresiones de función con la ayuda de ejemplos.
Una función es un bloque de código que realiza una tarea específica.
Supongamos que necesitamos crear un programa para crear un círculo y colorearlo. Podemos crear dos funciones para resolver este problema:
- una función para dibujar el círculo
- una función para colorear el círculo
Dividir un problema complejo en partes más pequeñas hace que nuestro programa sea fácil de entender y reutilizable.
Hay dos tipos de funciones:
- Funciones de biblioteca estándar: Predefinido en C++
- Función definida por el usuario: Creado por usuarios
En este tutorial, nos centraremos principalmente en las funciones definidas por el usuario.
Función definida por el usuario de C++
C++ permite al programador definir su propia función.
Un código de grupos de funciones definido por el usuario para realizar una tarea específica y ese grupo de código recibe un nombre (identificador).
Cuando se invoca la función desde cualquier parte del programa, todo ejecuta los códigos definidos en el cuerpo de la función.
Declaración de función C++
La sintaxis para declarar una función es:
returnType functionName (parameter1, parameter2,...) {
// function body
}
Aquí hay un ejemplo de una declaración de función.
// function declaration
void greet() {
cout << "Hello World";
}
Aquí,
- el nombre de la función es
greet()
- el tipo de retorno de la función es
void
- los paréntesis vacíos significan que no tiene ningún parámetro
- el cuerpo de la función está escrito dentro de
{}
returnType
y parameters
más adelante en este tutorial.
Llamar a una Función
En el programa anterior, hemos declarado una función llamada greet()
. Para usar el greet()
función, necesitamos llamarla.
Así es como podemos llamar al greet()
anterior función.
int main() {
// calling a function
greet();
}

Ejemplo 1:mostrar un texto
#include <iostream>
using namespace std;
// declaring a function
void greet() {
cout << "Hello there!";
}
int main() {
// calling the function
greet();
return 0;
}
Salida
Hello there!
Parámetros de función
Como se mencionó anteriormente, una función se puede declarar con parámetros (argumentos). Un parámetro es un valor que se pasa al declarar una función.
Por ejemplo, consideremos la siguiente función:
void printNum(int num) {
cout << num;
}
Aquí, el int
variable numero es el parámetro de la función.
Pasamos un valor al parámetro de función mientras llamamos a la función.
int main() {
int n = 7;
// calling the function
// n is passed to the function as argument
printNum(n);
return 0;
}
Ejemplo 2:Función con Parámetros
// program to print a text
#include <iostream>
using namespace std;
// display a number
void displayNum(int n1, float n2) {
cout << "The int number is " << n1;
cout << "The double number is " << n2;
}
int main() {
int num1 = 5;
double num2 = 5.5;
// calling the function
displayNum(num1, num2);
return 0;
}
Salida
The int number is 5 The double number is 5.5
En el programa anterior, hemos usado una función que tiene un int
parámetro y uno double
parámetro.
Luego pasamos num1 y num2 como argumentos. Estos valores son almacenados por los parámetros de función n1 y n2 respectivamente.

Declaración de devolución
En los programas anteriores, hemos usado void en la declaración de la función. Por ejemplo,
void displayNumber() {
// code
}
Esto significa que la función no devuelve ningún valor.
También es posible devolver un valor de una función. Para esto, necesitamos especificar el returnType
de la función durante la declaración de la función.
Luego, el return
se puede usar para devolver un valor de una función.
Por ejemplo,
int add (int a, int b) {
return (a + b);
}
Aquí, tenemos el tipo de datos int
en lugar de void
. Esto significa que la función devuelve un int
valor.
El código return (a + b);
devuelve la suma de los dos parámetros como el valor de la función.
El return
declaración denota que la función ha terminado. Cualquier código después de return
dentro de la función no se ejecuta.
Ejemplo 3:Sumar dos números
// program to add two numbers using a function
#include <iostream>
using namespace std;
// declaring a function
int add(int a, int b) {
return (a + b);
}
int main() {
int sum;
// calling the function and storing
// the returned value in sum
sum = add(100, 78);
cout << "100 + 78 = " << sum << endl;
return 0;
}
Salida
100 + 78 = 178
En el programa anterior, el add()
La función se usa para encontrar la suma de dos números.
Pasamos dos int
literales 100
y 78
mientras llama a la función.
Almacenamos el valor devuelto por la función en la variable sum y luego lo imprimimos.

Observe que sum es una variable de int
escribe. Esto se debe a que el valor de retorno de add()
es de int
tipo.
Prototipo de Función
En C++, el código de declaración de la función debe estar antes de la llamada a la función. Sin embargo, si queremos definir una función después de la llamada a la función, necesitamos usar el prototipo de función. Por ejemplo,
// function prototype
void add(int, int);
int main() {
// calling the function before declaration.
add(5, 3);
return 0;
}
// function definition
void add(int a, int b) {
cout << (a + b);
}
En el código anterior, el prototipo de función es:
void add(int, int);
Esto proporciona al compilador información sobre el nombre de la función y sus parámetros. Es por eso que podemos usar el código para llamar a una función antes de que se haya definido la función.
La sintaxis de un prototipo de función es:
returnType functionName(dataType1, dataType2, ...);
Ejemplo 4:Prototipo de función C++
// using function definition after main() function
// function prototype is declared before main()
#include <iostream>
using namespace std;
// function prototype
int add(int, int);
int main() {
int sum;
// calling the function and storing
// the returned value in sum
sum = add(100, 78);
cout << "100 + 78 = " << sum << endl;
return 0;
}
// function definition
int add(int a, int b) {
return (a + b);
}
Salida
100 + 78 = 178
El programa anterior es casi idéntico al Ejemplo 3 . La única diferencia es que aquí, la función se define después la llamada de función.
Es por eso que hemos usado un prototipo de función en este ejemplo.
Beneficios de usar funciones definidas por el usuario
- Las funciones hacen que el código sea reutilizable. Podemos declararlos una vez y usarlos varias veces.
- Las funciones facilitan el programa ya que cada pequeña tarea se divide en una función.
- Las funciones aumentan la legibilidad.
Funciones de biblioteca de C++
Las funciones de biblioteca son las funciones integradas en la programación de C++.
Los programadores pueden usar funciones de biblioteca invocando las funciones directamente; no necesitan escribir las funciones ellos mismos.
Algunas funciones de biblioteca comunes en C++ son sqrt()
, abs()
, isdigit()
, etc.
Para usar funciones de biblioteca, generalmente necesitamos incluir el archivo de encabezado en el que se definen estas funciones de biblioteca.
Por ejemplo, para usar funciones matemáticas como sqrt()
y abs()
, necesitamos incluir el archivo de encabezado cmath
.
Ejemplo 5:programa C++ para encontrar la raíz cuadrada de un número
#include <iostream>
#include <cmath>
using namespace std;
int main() {
double number, squareRoot;
number = 25.0;
// sqrt() is a library function to calculate the square root
squareRoot = sqrt(number);
cout << "Square root of " << number << " = " << squareRoot;
return 0;
}
Salida
Square root of 25 = 5
En este programa, el sqrt()
La función de biblioteca se utiliza para calcular la raíz cuadrada de un número.
La declaración de función de sqrt()
se define en el cmath
archivo de cabecera. Por eso necesitamos usar el código #include <cmath>
para usar el sqrt()
función.
Para obtener más información, visite las funciones de la biblioteca estándar de C++.
Lenguaje C
- Operadores de C++
- Comentarios de C++
- Pasar matriz a una función en programación C++
- Función amiga de C++ y Clases amigas
- 10 funciones populares en Stratasys Insight
- Sobrecarga de operadores de C++ con ejemplos
- Funciones Python Lambda con EJEMPLOS
- Funciones de Verilog
- C - Funciones
- Sobrecarga de C++ (operador y función)
- Polimorfismo en C++