C# permite que los argumentos de función tengan valores predeterminados, tales tipos de argumentos conocidos como argumentos predeterminados. O, en otras palabras, un argumento predeterminado es un argumento cuyo valor se proporciona en la declaración del método que se asignará automáticamente si el valor del argumento no se especifica durante la llamada a la función, entonces el argumento se asignará con un valor predeterminado. El valor predeterminado se asigna al argumento con la ayuda de un operador de asignación (=), por ejemplo, «argumentname=value».
- El valor de los argumentos predeterminados debe ser constante.
- Se puede usar con métodos, constructores, delegados, etc.
- Se debe tener cuidado al usar argumentos predeterminados junto con la sobrecarga de métodos porque el compilador puede arrojar un error si hay una ambigüedad entre los argumentos predeterminados y el método sobrecargado.
- Una vez que se usa el valor predeterminado para un argumento en la definición de la función, todos los argumentos siguientes también deben tener un valor predeterminado, de lo contrario arrojará un error. La siguiente definición de método no es válida.
public void methodName(res1, res2 = defaultValue, res3)
Esta no es la definición de función correcta porque los argumentos predeterminados no deben ir seguidos de argumentos normales.
Sintaxis:
public void methodName(name1, name2, name3 = defaultValue, name4 = defaultValue)
Acercarse:
1. Cree un método, por ejemplo, mydisplay(). Ahora, en la definición del método, tome 4 argumentos y los argumentos 3 y 4 se asignan con valores predeterminados con la ayuda del operador de asignación (=).
static void mydisplay(int xx, int yy, int zz = 10, int aa = 4)
2. Ahora, desde el método principal, llame al método mydisplay() con varios argumentos. Por ejemplo:
mydisplay(200, 456), mydisplay(400, 300, 4562), mydisplay(450, 230, 6070, 234)
3. El método mydisplay() muestra los valores de los argumentos con la ayuda del método Console.WriteLine().
Ejemplo:
C#
// C# program to illustrate default arguments using System; class GFG{ // Driver code public static void Main() { // Passing only two argument mydisplay(200, 456); // Passing three arguments mydisplay(400, 300, 4562); // Passing four arguments mydisplay(450, 230, 6070, 234); } // Method with two normal and two default arguments static void mydisplay(int xx, int yy, int zz = 10, int aa = 4) { // Displaying the values Console.WriteLine("The value of xx = " + xx + "," + "The value of yy = " + yy + "," + "The value of zz = " + zz + "," + "The value of aa = " + aa); } }
Producción:
The value of xx = 200,The value of yy = 456,The value of zz = 10,The value of aa = 4 The value of xx = 400,The value of yy = 300,The value of zz = 4562,The value of aa = 4 The value of xx = 450,The value of yy = 230,The value of zz = 6070,The value of aa = 234
Explicación: en el ejemplo anterior, creamos un método denominado mydisplay con cuatro argumentos, de los cuales dos son normales y dos son argumentos predeterminados. Ahora, en el método mydisplay(), cuando se llama al pasar dos argumentos (es decir, xx e yy), zz y aa se asignarán con valores predeterminados, y el valor pasado se asignará a xx e yy . De manera similar, cuando se pasan xx , yy y zz a la función, a aa se le asignará el valor predeterminado, y a xx, yy y zz se le asignarán los valores asignados.
Publicación traducida automáticamente
Artículo escrito por pulamolusaimohan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA