.net 可选参数和命名参数

Posted dragon.net

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.net 可选参数和命名参数相关的知识,希望对你有一定的参考价值。

 

可选参数,可以为方法的参数设置默认值,在调用方法的时候,如果不传递参数,就是执行默认参数。

 

 class Program
    {
        private static void M(int x = 9, string s = "A", DateTime dt = default(DateTime), Guid guid = new Guid());
  
        static void Main(string[] args)
        {

            //执行如下方法, M方法会根据参数从左往右匹配。
            //guid: 就会根据这个名称与方法中的名称比对,
            //执行方法等于 
            //M(5, "A", DateTime.Now, Guid.NewGuid());
            M(5, guid: Guid.NewGuid(), dt: DateTime.Now);
             
            Console.ReadLine();
        }

 

 

如果参数要求 ref/out,为了以传参数名的方式传递实参,可以使用如下方法:

 class Program
    { private static void M(ref int x) {    } 
        static void Main(string[] args)
        { int a = 5;
            M(x: ref a);  
            Console.ReadLine();
        }

 

以上是关于.net 可选参数和命名参数的主要内容,如果未能解决你的问题,请参考以下文章

C#4.0中的更改——命名参数和可选参数

Mathematica 中的可选命名参数

使用argparse的可选命名参数

C#参数知识盘点,形/实参值/引用传递refoutinparams可选命名等

第9章 参数

Dart语法之可选参数