[C#]4.0具名参数与选用参数

原创 2017年11月10日 08:44:46

C#也越来越像VB.NET,具名参数与选用参数这两个功能在VB.NET里老早就有了,但C#一直到C#4.0版本才添加,添加这个特性后,以后在使用方法时就不用选择那么多的overload方法,而且调用方法也变得非常直观与方便,参数可以设置默认值,且不用每个参数都传入。如果你用C#写过Office Automation的程序就知道为何选用参数有多么棒了
那么我们来做一个演示程序吧:

 static void Main(string[] args)
        {
            Console.Write("标准调用: Sum(1,2,3)");
            Sum(1,2,3); 
            Console.Write("忽略Z参数,Sum(1, 2)等同于调用Sum(1, 2,7)因为Z的默认值为7");
            Sum(1, 2);
            Console.Write("忽略y与z参数,Sum(1)等同于调用Sum(1,5,7)");
            Sum(1);
            //C#4.虽然支持具名参数与选用参数,不过不允许你这样写:
            //Sum(1,,3);//C#不允许忽略参数传入
            //C#4.0具名参数与选用参数的语法如下:
            Console.WriteLine();
            Console.WriteLine("*******C#4.0具名参数与选用参数的语法如下:********");
            Console.Write("想忽略第二个参数,那第三个参数就用具名参数法Sum(1,z:3)");
            Sum(1,z:3); 
            Console.Write("全部具名参数法Sum(x:1, z: 3)");
            Sum(x:1, z: 3); 
            Console.Write("传入具名参数是不需考虑顺序的, Sum(z: 3, x: 1)");
            Sum(z: 3, x: 1);

            Console.ReadKey();
        }
        /// <summary>
        /// 声明一个M方法,
        /// 其中第二、第三个参数是包含默认值的选用参数
        /// </summary>
        /// <param name="x"></param>
        /// <param name="y">默认选用参数</param>
        /// <param name="z">默认选用参数</param>
        static void Sum(int x, int y = 5, int z = 7)
        {
            int total = x + y + z;
            Console.WriteLine("求和:{0}",total.ToString());

        }

这里写图片描述

版权声明:本文为博主原创文章,未经博主允许不得转载。

C#4.0 具名参数 和 可选参数

C# 4.0中的可缺省参数 C# 4.0现在对方法,构造器,以及索引器支持使用可缺省的参数(注:VB支持可缺省参数可是有年头了)。 当参数的默认值作为声明的一部分被指定的时候,参数就是可缺省的。例...
  • haitaoDoit
  • haitaoDoit
  • 2014年12月26日 12:16
  • 4561

C语言中值得深入知识点----数组做函数参数、数组名a与&a区别、数组名a的"数据类型"

本文用简单的例子说明了C语言中数组做函数参数,数组名a与&a区别,数组名a的"数据类型",以及编译器的不同,相应指针所占字节的不同导致程序的细微差别。...
  • jin13277480598
  • jin13277480598
  • 2016年07月12日 21:29
  • 4570

Microsoft.Jet.OLEDB.4.0数据库连接字符串中密码的写法!

当程序用ado的jet4.0方式连接的时候,对于设有access数据库密码的mdb的访问居然报错“无法启动应用程序,工作组信息文件丢失,或是已被其他用户已独占方式打开”,而用odbc方式不报错,小阴沟...
  • hpnets
  • hpnets
  • 2016年06月12日 20:56
  • 2677

Android4.0入门之Activity返回参数

  • 2014年04月27日 11:32
  • 1.43MB
  • 下载

谈谈C# 4.0新特性“缺省参数”的实现

谈谈C# 4.0新特性“缺省参数”的实现C#4.0关于缺省参数的新特性,相信大家都不会陌生。所谓缺省参数,顾名思义,就是在声明方法的某个参数的时候为之指定一个默认值,在调用该方法的时候如果采用该默认值...
  • rise51
  • rise51
  • 2011年01月20日 13:58
  • 337

WF4.0 基础篇 (七) 数据的传递 变量与参数的使用

本节主要介绍如何在WF4.0中参数与变量的使用原则与技巧,这些内容是学习WF4.0首先要掌握的   本文例子下载: http://files.cnblogs.com/foundation/Var...
  • heshengfen123
  • heshengfen123
  • 2013年10月11日 22:08
  • 1018

WF4.0 基础篇 (六) 数据的传递 Arguments 参数

节主要介绍如何在WF4.0中使用参数,以及在流程启动时传入参数据在流程结束时读取参数  本文例子下载: http://files.cnblogs.com/foundation/ArgumentsSam...
  • thebesttome
  • thebesttome
  • 2011年06月17日 18:41
  • 1561

Eclipse(Luna)集成Resin4.0+服务器,以及配置参数

Eclipse(Luna)集成Resin4.0+服务器,以及配置参数
  • aixiaoyang168
  • aixiaoyang168
  • 2016年03月21日 17:44
  • 2893

BLE4.0 连接参数说明和使用

我们知道BLE最大的特点是低功耗,协议中是如何实现这一目标的呢?重点是减少工作时间,通过某种约定,让设备在大部分时间处于休眠状态从而达到较少功耗的目的。同时BLE中还采用了调频机制来确保数据的安全性,...
  • QQ576494799
  • QQ576494799
  • 2016年05月03日 15:52
  • 1037

谈谈C# 4.0新特性“缺省参数”的实现

C#4.0关于缺省参数的新特性,相信大家都不会陌生。所谓缺省参数,顾名思义,就是在声明方法的某个参数的时候为之指定一个默认值,在调用该方法的时候如果采用该默认值,你就无须指定该参数。和很多语言层面特性...
  • kllxyu
  • kllxyu
  • 2013年12月12日 12:36
  • 631
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[C#]4.0具名参数与选用参数
举报原因:
原因补充:

(最多只允许输入30个字)