日期:2014-05-20  浏览次数:20715 次

关于实体类的定义方法
为什么.net中这样定义一个实体类
private int _id;
public int id
{
  get{ return _id;}
  set{  _id=value;}
}
 
直接这样定义不一样吗
public int id{get,set}

两者有啥区别啊
------解决方案--------------------
前者兼容C# 2.0或者以下版本编译器。
后者和前者等价,但是需要C# 3.0或以上。
------解决方案--------------------
没啥区别。
据说,第二种写法,C#编译器会自动跟你生成一个内部的私有字段。

勤快的话第一种,便于今后加代码。懒的话第二种。
------解决方案--------------------
引用:
前者兼容C# 2.0或者以下版本编译器。
后者和前者等价,但是需要C# 3.0或以上。

谁说后者需要3.0以上的。看你一堆勋章是怎么得的?
------解决方案--------------------
引用:
引用:
前者兼容C# 2.0或者以下版本编译器。
后者和前者等价,但是需要C# 3.0或以上。

谁说后者需要3.0以上的。看你一堆勋章是怎么得的?

敢质疑老曹啊你

后者是自动属性,确实是C#3.0中的新语法,不过lz你写错啦,这样写的

private int _id;
public int id
{
  get{ return _id;}
  set{ _id=value;}
}
======================》等价于
public int id {get;set;}