【问题标题】:Colon use inside function declaration在函数声明中使用冒号
【发布时间】:2014-06-21 08:00:13
【问题描述】:

我看到了一段代码,其中在函数声明中使用了冒号:

DoWork(Param1:Param2)

我知道冒号是为了继承:class Child: Parent 但是,冒号在变量之前使用的目的是什么?

编辑我已经更正了问题

【问题讨论】:

  • 你确定它们不在调用者代码而不是声明代码中吗?
  • 我相信是调用者代码。否则这样的声明将无法编译
  • @LordTitiKaka 换句话说,您确定您看到的行包含public void 以及:?因为这一行似乎在语法上不正确。
  • @SergeyBerezovskiy 你说得对,我已经编辑了问题,现在请 +1 给我 :)

标签: c# colon


【解决方案1】:

Named optional arguments

这样您可以提供可选数量的参数,但编译器需要知道哪些参数与哪些参数结合,否则将使用默认值。

【讨论】:

    【解决方案2】:

    现在,许多热心的 C# 崇拜者不解地皱起眉头来思考一个问题:为什么我们必须使用 ':' 来表示命名参数?当然“=”会更好?

    嗯,用冒号代替等号的原因很简单:等号已经有意义了。

    int myInt;
    
    CallMe(myInt = 5);  //set myInt variable to 5
    
    CallMe(myInt : 5);  //set myInt parameter of CallMe method to 5
    

    【讨论】:

    • 那是你调用方法的时候,而不是你声明方法的时候。
    • 在您的示例中为真,但问题是关于在方法声明中使用冒号。
    猜你喜欢
    • 2018-01-06
    • 1970-01-01
    • 2017-03-13
    • 1970-01-01
    • 2021-05-18
    • 1970-01-01
    • 2014-12-27
    相关资源
    最近更新 更多