Modelo de função C ++ (com exemplo)

Índice

Neste tutorial, aprenderemos sobre modelos de funções em C ++ com a ajuda de exemplos.

Os modelos são recursos poderosos do C ++ que nos permitem escrever programas genéricos.

Podemos criar uma única função para trabalhar com diferentes tipos de dados usando um modelo.

Declaração de modelo de função

Um template de função começa com a palavra-chave templateseguida pelos parâmetros do template dentro do qual é seguido pela declaração da função.

 template T functionName(T parameter1, T parameter2,… ) ( // code )

No código acima, Té um argumento modelo que aceita diferentes tipos de dados ( int, float, etc.), e typenameé uma palavra-chave.

Quando um argumento de um tipo de dados é passado para functionName(), o compilador gera uma nova versão functionName()para o tipo de dados fornecido.

Chamando um modelo de função

Depois de declarar e definir um modelo de função, podemos chamá-lo em outras funções ou modelos (como a main()função) com a seguinte sintaxe

 functionName(parameter1, parameter2,… );

Por exemplo, vamos considerar um modelo que adiciona dois números:

 template T add(T num1, T num2) ( return (num1 + num2); )

Podemos então chamá-lo na main()função para adicionar inte doublenúmeros.

 int main() ( int result1; double result2; // calling with int parameters result1 = add(2, 3); cout << result1 << endl; // calling with double parameters result2 = add(2.2, 3.3); cout << result2 << endl; return 0; ) 
Chamada de função baseada em tipos de dados

Exemplo: Encontrando o Valor Absoluto dos Números

 #include using namespace std; template T add(T num1, T num2) ( return (num1 + num2); ) int main() ( int result1; double result2; // calling with int parameters result1 = add(2, 3); cout << "2 + 3 = " << result1 << endl; // calling with double parameters result2 = add(2.2, 3.3); cout << "2.2 + 3.3 = " << result2 << endl; return 0; )

Resultado

 2 + 3 = 5 2,2 + 3,3 = 5,5

Artigos interessantes...