【问题标题】:AutoProperty as out value [duplicate]AutoProperty作为输出值[重复]
【发布时间】:2015-01-21 00:50:57
【问题描述】:

为什么我不能使用AutoProperty 作为out 参数?

例如(这给了我一个错误):

public int HeightValue { get; set; }

//...

private void Parse()
{
    int.TryParse(WidthText.Text, out HeightValue);
    //Intellisense Error: out argument is not classified as a variable
}

【问题讨论】:

    标签: c# out tryparse


    【解决方案1】:

    可能是因为属性本​​质上是方法,你需要给一个字段来设置out参数的值。您可以为您的属性定义一个支持字段并将其值作为输出参数。

    在此处查看 Jon Skeet 的答案:

    Passing a property as an 'out' parameter in C#

    【讨论】:

      【解决方案2】:

      方法本身需要一个变量作为输出参数。它必须有一个可以写入值的存储位置。不是一个属性,也不是它需要调用的任何东西:只是一个存储位置。属性不满足该要求。所以编译器在方法中没有什么可以做的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-08-06
        • 1970-01-01
        • 2023-04-07
        • 2016-07-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多