C#可选实参和命名实参

1.可选实参要求:

  (1):可选参数必须位于必选实参之后。

  (2):可选参数的默认值必须为常量,如数字,常量字符串,null,const,成员,枚举成员。

  (3):参数数组不能为可选参数(params int [] intput = null)

  (4):用ref或者out关键字标识的参数不能设置为可选参数

  static void TestMethod(int x,int y = 0,string name = "zhangsan")
        {
            Console.WriteLine("x = {0},y = {1},name = {2}",x,y,name);
        }

2.命名实参

  当调用可选参数的方法时,如果我们省略了一个参数,编译器默认我们省略的时最后一个参数,但是如果我们只想省略第二个参数时,这时候命名实参就出现了,

  

class Program :
    {
        static void Main(string[] args)
        {
            //省略name
            TestMethod(2,14);
            //省略y和name参数
            TestMethod(2);
            //为部分指定名称,使用命名实参,只是省略第二个
            TestMethod(1,name:"lisi");
            //所有的实参指定名称
            TestMethod(x:2,y:20,name:"wangwu");
          
            Console.ReadKey();
        }
        static void TestMethod(int x,int y = 0,string name = "zhangsan")
        {
            Console.WriteLine("x = {0},y = {1},name = {2}",x,y,name);
        }
    }

C#可选实参和命名实参

上一篇:ubuntu 中导 tarfile,win 不亲切


下一篇:C# 进制转化