zoukankan      html  css  js  c++  java
  • C#终于支持可选参数了!

    今天偶然看了一下C#4.0的新特性, 第一个新特性就令我兴奋不已, 曾经一度令我使用C#很不习惯的"死参数"问题终于搞定了.
    实在太爽了!

    过去用C++, VB.NET的时候都很爽, 开始用C#了发现怎么没有这个功能, 令我很难受, 一直不明白是C#设计的问题还是其中实现起来太复杂啊, 不过这回终于OK了.

    代码
     1     class Program
     2     {
     3         static void Main(string[] args)
     4         {
     5             Show();
     6             Show("TonyKent");
     7             Console.ReadLine();
     8         } 
     9 
    10         public static void Show(string msg = "")
    11         {
    12             Console.WriteLine("Hello {0}",msg);
    13         }
    14     }

    参数默认值, 有了这个, 好多方法的重载可以减少了~ 

    2010-09-06  补充:
    在使用命名参数时, 如果使用多个可选参数, 必须都放在参数列表的最后.
    而且在调用方法时, 可以选择对可选参数进行赋值, 如下:

    代码
     1 class Program
     2 {
     3     static void Main(string[] args)
     4     {
     5         Show("2010-09-06");
     6         Show("2010-09-06""World""Morning");
     7         Show("2010-09-06", msg: "Morning");
     8         Console.ReadLine();
     9     } 
    10 
    11     public static void Show(string date, string name = "TonyKent"string msg = "")
    12     {
    13         Console.WriteLine("{0} Hello {1} {2}!", date, name, msg);
    14     }
    15 }

    上面代码执行结果如下:
    2010-09-06 Hello TonyKent!
    2010-09-06 Hello World Morning!
    2010-09-06 Hello  Morning!

    可见, 可选参数选择使用时, 用参数名+":"去直接命名强制使用.

     
     
     
  • 相关阅读:
    jQuery
    编程英语
    Javaweb基础案例
    Maven-基础设置教程
    .Net微服务实践(三):Ocelot配置路由和请求聚合
    .Net微服务实践(二):Ocelot介绍和快速开始
    ASP.NET Core技术研究-探秘Host主机启动过程
    Docker安装手册
    HBase文档学习顺序
    考研学习笔记极限与连续笔记顺序
  • 原文地址:https://www.cnblogs.com/xdot/p/5834276.html
Copyright © 2011-2022 走看看