日期:2014-05-18  浏览次数:20702 次

C#中属性和字段的比较

属性和字段的比较:
       属性不能使用ref/out 型参数
       属性使用前必须赋值
//属性
struct Time
{
    ...
    public int Hour
    {  
        set { ... }
    }
    private int hour;
}
Time lunch;
Method(out lunch.Hour); //错误
lunch.Hour = 12;//错误

//字段
struct Time
{
    ...
    public int Hour;
    ...
}
Time lunch;
Method(out lunch.Hour); //正确
lunch.Hour = 12;
属性使用前必须赋值,例如:
  Time lunch;
  lunch.Hour = 12;//错误,lunch没有初始化

1楼left_前天 12:03
以前真是没有注意到。谢谢楼主。