时间:2011-01-06 16:43:58

标签: c#

7 个答案:

答案 0 :(得分:17)

答案 1 :(得分:13)

答案 2 :(得分:3)

答案 3 :(得分:1)

答案 4 :(得分:1)

答案 5 :(得分:1)

@Supercat:这很有趣。也许困惑在于理解为什么要通过引用传递引用类型!

仅扩展ref类型的类比(我认为值类型更容易理解)

可以在多张纸上写出相同的VIN(车辆ID号码),因此您手上的所有滑动都指的是同一辆车。如果你在一张纸上写上“涂蓝色”而在另一张纸上涂上“红色”怎么办?这表明滑动只能包含VIN(对象地址),所有其他信息都存储在汽车本身中。

如果你有兴趣在车间涂漆,你不必发送单据,你可以告诉他们VIN ......只需要知道,价值 - 通过val。你仍然保持滑动,他们不能改变你的单据上的内容...因此它更安全。因此,他们用自己的单据写下VIN - 参考文献的副本。

另一方面,你可能会请一位同事从货架上拿到最后一辆洗过的车的单据,前往前院并选择一辆不是最后一辆洗过的车的车,然后用洗过的车的新VIN返回单车。写在上面 - 由ref。使用实际滑动并且您已经参考实际滑动(货架)的地址,以便从那里获得滑动。他最好不要失去它或弄湿它......不太安全。

在所有这个palava中,没有人在谈论复制,拍摄或移动实际的汽车,因为这并不是指价值类型。

答案 6 :(得分:0)