据我了解,C# 通过引用将参数传递给方法。在 VB.NET 中,您可以使用 ByVal 和 ByRef 指定它。默认值为 ByVal。
这是为了与 Visual Basic 6.0 兼容,还是只是随机的?另外,如何指定在 C# 中使用什么?我有点喜欢按值传递参数的想法。
C# 中的参数默认按值传递。没有修饰符可以明确说明,但如果添加ref
/out
参数是引用。
这里通常的混淆是:
按值传递是 C# 中的默认值。但是,如果要传递的变量是引用类型,那么您是按值传递引用。这也许是你困惑的根源。
基本上,如果您通过值传递引用,那么您可以更改它所引用的对象,这些更改将在方法之外持续存在,但您不能让变量引用不同的对象并使该更改在方法之外持续存在。
C# 中的参数默认通过“ByVal”传递。如果你想要不同的行为,你必须指定“ref”或“out”。