【发布时间】:2016-10-18 16:22:07
【问题描述】:
朋友们,我在网上看了几篇文章,才知道默认情况下,函数参数在c#中是值类型。有什么方法可以验证吗?
请推荐一段代码或任何网络参考。
【问题讨论】:
-
两者都不是,或者更确切地说,这不是 .NET 的工作方式。 类型 是引用或值类型,这意味着它们是通过引用或值传递的。字符串是引用类型,而
Int32是值类型。您可以使用ref关键字通过引用传递值类型,但这并不常见 -
@PanagiotisKanavos 参考类型are not passed by reference!
-
@MAV 传递的是对数据的引用,而不是数据本身。这就是这个问题是关于和链接答案所说的。
-
@PanagiotisKanavos 是的。但是引用是按值传递的。说引用类型通过引用传递是不正确的。 “通过引用传递”具有特定含义。我提出它的唯一原因是因为我看到很多初学者对
ref和out关键字感到困惑,因为人们一直告诉他们引用类型是通过引用传递的。
标签: c#-4.0