📜  默认参数的 C# 程序

📅  最后修改于: 2022-05-13 01:54:23.183000             🧑  作者: Mango

默认参数的 C# 程序

C# 允许函数参数具有默认值,例如称为默认参数的参数类型。或者换句话说,默认参数是一个参数,其值在方法声明中给出,如果在函数调用期间未指定参数的值,则该参数将被自动分配,则该参数将被分配一个默认值。在赋值(=)运算符的帮助下将默认值分配给参数,例如“argumentname=value”。

  • 默认参数的值必须是常量。
  • 它可以与方法、构造函数、委托等一起使用。
  • 在使用默认参数和方法重载时应该小心,因为如果默认参数和重载方法之间存在歧义,编译器可能会抛出错误。
  • 一旦默认值用于函数定义中的参数,所有后续参数也应该具有默认值,否则将引发错误。以下方法定义无效。
public void methodName(res1, res2 = defaultValue, res3)

这不是正确的函数定义,因为默认参数不应跟随普通参数。

句法:

方法:

1.创建一个方法,例如 mydisplay()。现在,在方法定义中,使用 4 个参数,并在赋值运算符(=) 的帮助下为第 3 和第 4 个参数分配默认值。

static void mydisplay(int xx, int yy, int zz = 10, int aa = 4) 

2.现在,从主方法调用带有不同数量参数的 mydisplay() 方法。例如:

mydisplay(200, 456), mydisplay(400, 300, 4562), mydisplay(450, 230, 6070, 234)

3. mydisplay() 方法在 Console.WriteLine() 方法的帮助下显示参数的值。

例子:

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);
}
}


输出:

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

说明:在上面的示例中,我们创建了一个名为 mydisplay 的方法,其中有四个参数,其中两个是普通参数,两个是默认参数。现在,在 mydisplay() 方法中,当通过传递两个参数(即 xx 和 yy)调用时,将为 zz 和 aa 分配默认值,并将传递的值分配给 xx 和 yy 以类似的方式,当 xx 、 yy 和 zz被传递给函数时,aa 将被分配默认值,并且 xx、yy 和 zz 将被分配指定的值。