tvr*_*tvr 5 c# pass-by-reference pass-by-value
我对C#有点新,只是想知道是否有一个类(常用)列表,默认情况下作为副本传递.我该如何识别它们?
我知道基本的基本对象类型 - int,uint,float,strings,... - 是通过副本传递的.
Jar*_*Par 16
在C#/ .Net对象中可以分类为值或引用类型[1].值类型是从System.ValueTypeC#派生并使用struct类型声明定义的任何类型.这些是通过复制/值传递的.
引用类型是不System.ValueType使用class关键字从C#派生和定义的类型.引用类型实例的标识符称为引用(类似于指针).这些也是默认值传递,但只传递引用而不是整个对象.
您的问题还提到string实例是通过副本传递的. String.Net是一种引用类型(直接派生自System.Object),因此不会通过完整副本传递.
[1]指针在这里可能值得他们自己的课,但我在这个讨论中忽略了它们.
| 归档时间: |
|
| 查看次数: |
11500 次 |
| 最近记录: |