Supongamos que desea hacer una función , Mult, que multiplica dos números. Usted puede escribir una versión diferente para cada tipo de datos , que es la sobrecarga de métodos , o puede utilizar las plantillas de C + + de función y tienen una firma de función en lugar de tres . C + + plantillas de función automatizar tipo de entrega , dan al usuario de la biblioteca más poder expresivo y reducir el costo de mantenimiento del código . Cosas que necesitará
Advanced C + +
compilador C + + con el IDE , como la de derramamiento de sangre
Ver Más instrucciones
1
sobrecarga una función que multiplica el número de tipo int , float y double :
int Mult ( int a , int b ) {
regreso (a * b ) ; }
flotador Mult (float a, float b ) {
regreso (a * b ) ; }
Mult doble (double a, double b ) {
regreso (a * b ) ; }
2
hacer lo mismo que Paso 1 no , utilizando plantillas de función C + + :
plantilla
T Mult (Ta , Tb ) {
regreso (a * b ) ; }
3
Compara Paso 2 al Paso 1 . La línea adicional de código insertado por encima de la definición de la función en el paso 2 parece una buena solución de compromiso para repetir el cuerpo de la función dos o más veces.
4
retorno al código del paso 2 . T es el nombre de tipo . La palabra clave class significa que T puede tomar cualquier identidad. Es un tipo genérico que el compilador interpreta sobre la marcha dependiendo de qué parámetro el usuario pasa a la misma. Así que T puede ser un número entero , un flotante, una doble o una clase que tiene el operador de multiplicación definido , de lo contrario la operación de multiplicación permanece indefinida
5
prueba a fondo la firma de función que utiliza plantillas. . Realice pruebas con todos los tipos de datos esperados para asegurarse de que no obtiene resultados inesperados.