【问题标题】:"Constant Expression required" Exception thrown when using Optional Parameters [duplicate]使用可选参数时抛出“需要常量表达式”异常[重复]
【发布时间】:2015-05-21 12:29:13
【问题描述】:

运行此子过程时出现“需要常量表达式”异常;

Public Sub SolidFill(Optional SolidColor As Color = Color.Black)
    ....
End Sub

但是,这只发生在使用ColorTypes 时。 我需要做些什么来防止这个异常被抛出?

【问题讨论】:

    标签: .net vb.net exception colors optional-parameters


    【解决方案1】:

    你可以这样做:

    Public Sub SolidFill(Optional SolidColor As Color = Nothing)
        If SolidColor = Nothing Then SolidColor = Color.Black
    End Sub
    

    【讨论】:

    • 太棒了!我会将此标记为答案。你知道这是为什么吗?有没有办法在参数括号中用颜色定义SolidFill
    • 最好感谢史蒂夫,因为这个答案stackoverflow.com/questions/16045479/…
    • @SimonSchödler:您不能使用 Color.Black 作为可选参数的默认值的原因是它不是一个常量值,Color.Black 是 Color Structure 本身的属性返回一个颜色结构。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-19
    • 2013-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多