Sintaxis

La sintaxis básica para la definición de una plantilla de función en C++ es la siguiente:

template <class TIPOD> // Prefijo de la plantilla
void nombreFunción(TIPOD variable);
  • template <class TIPOD>: Define una plantilla de función, donde TIPOD es un parámetro de tipo que se utilizará dentro de la función.
  • void nombreFunción(TIPOD variable): Declaración de la función utilizando el tipo genérico TIPOD.

Ejemplo

El siguiente ejemplo muestra cómo crear una plantilla de función para calcular el valor absoluto de un número:

#include <iostream>
#include <conio.h>

using namespace std;

// Declaración de la plantilla de función
template <class TIPOD>
void mostrarAbs(TIPOD numero);

int main() {
    int num1 = -1221;
    float num2 = -122.311;
    double num3 = -12.3421241;

    // Llamada a la plantilla de función con diferentes tipos de datos
    mostrarAbs(num1);
    mostrarAbs(num2);
    mostrarAbs(num3);

    getch();
    return 0;
}

// Definición de la plantilla de función
template <class TIPOD>
void mostrarAbs(TIPOD numero) {
    if (numero < 0) {
        numero *= -1;
    }

    cout << "El valor absoluto del numero es: " << numero << endl;
}

Explicación del Ejemplo

  1. Directivas del Preprocesador: Se incluyen las librerías necesarias (<iostream> para entrada y salida estándar, <conio.h> para la función getch()).
  2. Declaración de la Plantilla de Función:
    • template <class TIPOD>: Define una plantilla de función con el parámetro de tipo TIPOD.
    • void mostrarAbs(TIPOD numero): Declaración de la función que acepta un parámetro de tipo TIPOD.
  3. Función principal (main):
    • Se declaran variables de diferentes tipos (int, float, double) con valores negativos.
    • Se llama a la función mostrarAbs para cada una de estas variables.
  4. Definición de la Plantilla de Función:
    • La función mostrarAbs acepta un parámetro de tipo TIPOD.
    • Si el número es negativo, se multiplica por -1 para obtener su valor absoluto.
    • Se muestra el valor absoluto del número en la consola.

Salida Esperada

El valor absoluto del numero es: 1221
El valor absoluto del numero es: 122.311
El valor absoluto del numero es: 12.3421
--------------------------------
Process exited after 41.18 seconds with return value 0
Presione una tecla para continuar . . .