Parámetros predeterminados
Un argumento o parámetro predeterminado es el valor introducido en la función en el momento de la declaración de función. Este valor es asignado por el compilador automáticamente cuando se llama a la función. Durante cualquier llamada de función, si no se pasa ningún valor como parámetro para la función, significa que se utilizará el valor predeterminado. De lo contrario, el valor predeterminado se reemplazará con el nuevo.
Implementación de parámetros predeterminados
Ejemplo 1
Aquí, citaremos un ejemplo de muestra. Este ejemplo contendrá una función para calcular la suma de los valores pasados como parámetros por la llamada de función. La función contendrá cuatro variables. Primero, todos se inicializan como cero. Llamaremos a la función en el programa principal pasando argumentos a la función. El número de argumentos puede variar. Pasaremos dos argumentos, luego tres, y se pasarán cuatro parámetros en la última llamada de función.
Suma (20, 25, 30, 35);Cuando pasa dos parámetros, estos dos se almacenarán en solo dos variables; mientras que el resto seguirá siendo cero. Un caso similar es para la llamada de función con tres parámetros. Pero, cuando hay cuatro argumentos, entonces significa que las cuatro variables contendrán valores a sumar.
Guarde el código y luego, ejecute en el terminal Ubuntu usando un compilador G ++.
$ G ++ -O DEF DEF.CVerá el valor resultante para cada llamada de función.
Ejemplo 2
Este ejemplo se ocupa del uso de parámetros predeterminados de manera diferente para cada llamada de función, como se explica en el ejemplo anterior. Primero, defina la función con el tipo de retorno y los parámetros predeterminados. Como sabemos, los parámetros predeterminados se declaran al inicio. Entonces, declararemos los valores para las dos variables aquí:
Visualización void (char = '*', int = 3);La pantalla es el nombre de la función. Esta declaración predeterminada de parámetros funcionará cuando la función se llame con argumentos vacíos o sin valor. Dentro del programa principal, hemos declarado una variable de conteo de tipo entero, que se utilizará en el bucle para la iteración hasta este límite. Primero, la llamada de función se realiza sin argumentos en su interior. Eso significa que se utilizarán los parámetros predeterminados declarados para la función. Entonces los parámetros para esta llamada de función serán * y 3. En la segunda llamada de función, hemos pasado un solo símbolo de parámetro "#". Entonces, en este caso, el parámetro predeterminado de la segunda variable, 3, se utilizará tal como es. Pero el símbolo que se pasa será reemplazado por el símbolo que hemos declarado anteriormente.
Mostrar ('#');Ahora, llegando a la tercera llamada de función, se aprobarán dos argumentos esta vez, un símbolo '$' y la variable entera como recuento, que se declaró 5 en el programa principal. Ambos parámetros predeterminados no se utilizarán; Los nuevos argumentos reemplazarán estos parámetros predeterminados.
Display ('$', cuenta);Fuera de la función principal, la función de visualización, que se declaró por primera vez, ahora se ejecuta teniendo un bucle for que se iterará hasta que el valor de conteo. Cada iteración mostrará el personaje que se le pasó. De lo contrario, se mostrará el valor predeterminado.
Ahora, ejecute todo el código. Verá que cada vez que se muestre un símbolo en el enésimo momento, el valor se pasa como un parámetro.
Ejemplo 3
Este ejemplo será sobre el fenómeno de sobrecarga de funciones en C ++ mientras tiene parámetros predeterminados.
Sobrecarga de funciones
Por ejemplo, una función con una muestra de nombre se describe como:
Int speak (int a)Estas funciones descritas tienen el mismo nombre pero tienen argumentos diferentes. Ahora, consideraremos un programa C ++ para elaborar este concepto en parámetros predeterminados.
En la función principal, la función se llama con un número diferente de parámetros, con 2, 3 y 4 valores. Ahora, ejecute el código, verá que ha ocurrido un error de ambigüedad.
Cuando se declaran dos funciones del mismo nombre, es necesario tener diferentes parámetros. Pero ambas funciones que tienen el mismo nombre contienen casi los mismos parámetros, dos mismos y dos diferentes. Los mismos argumentos de la función confundirán el compilador al elegir qué función elegir porque las especificaciones de ambas funciones son las mismas. Tenemos una solución para resolver este dilema de ambigüedad con respecto a los parámetros predeterminados.
Primero, cambiaremos el tipo de retorno de ambas funciones. Del mismo modo, los parámetros tendrán consistencia en el tipo de datos de la variable. Por ejemplo, una función tomará el mismo tipo de datos para todas las variables, ya sea entero o flotante.
Suma flotante (flotante x, flotación, flotante z, flotante w);Ahora, en el programa principal, mientras llama a la función, tomaremos ambos valores de acuerdo con los tipos de datos. Pero recuerde que todos los números como argumentos seguirán el tipo de datos de la variable declarada. En otras palabras, todos los números en una sola llamada de función serán del mismo tipo de datos.
Suma (1.0f, 1.5f, 2.5f, 3.5f);Hemos mencionado "F" en una forma corta con cada valor de flotación para identificar que es un valor flotante y se pasará a la función que tiene variables de tipo de datos flotantes.
En la ejecución, verá los resultados obtenidos; Se obtendrán los valores de primer y tercer de la función con tipos de datos enteros. Mientras que el segundo se obtendrá de la función que tiene tipos de datos flotantes.
Ejemplo 4
Este ejemplo es una función de sobrecarga con una diferencia en el número de parámetros. Una pantalla de función se declara aquí que no tiene tipo de retorno, ya que la instrucción Cout dentro de la función mostrará los resultados. Una función tomará dos parámetros: int y un tipo de datos dobles. La segunda función tomará una sola variable de tipo de datos dobles, y la tercera tomará solo una variable de tipo de datos enteros.
Se declararán dos variables en el programa principal. Estos valores se pasarán a la función. La llamada de función es para la función específica en cada celda dependiendo del número de parámetros predeterminados.
Conclusión
Los parámetros predeterminados se declaran dentro de la función en el momento de la declaración de una función. Hemos utilizado algunos ejemplos en C ++ para elaborar la declaración y el proceso de parámetros predeterminados en el sistema Ubuntu. Durante la anulación de la función, el uso de parámetros predeterminados puede ser una situación de problemas con los mismos parámetros predeterminados. Esperamos que hayas encontrado este artículo útil. Consulte los otros artículos de Sugerencia de Linux para obtener más consejos y tutoriales.