![]() |
1
5
C#将事物分为引用类型和值类型。引用类型正如您所想象的,是通过引用传递的。这意味着传递对对象的引用。
值类型是通过值传递的;尽管我认为在引擎盖下可能会发生其他事情。不过,这对你来说并不重要,重要的只是行为。
值类型示例:
通过创建引用类型
|
![]() |
2
5
这是一个按值返回对象引用的方法:
|
![]() |
3
4
返回引用是一个C++术语。演示语法的示例:
C#没有这个功能,它与垃圾收集器的概念非常不兼容。C++通过实际返回一个指针在引擎罩上实现这个。当垃圾收集器移动底层内部数组时,指针就失效了。 这不是一个很大的问题,因为对象的变量已经是托管代码中的真实引用,就像引用的C++概念一样。但是 不 值类型,它们被复制。在这个特定的示例中,您将使用索引器:
|
![]() |
4
3
如果从函数返回一个引用类型,那么对象就被引用了。 CLR via C# |
![]() |
A B · C#Excel自动调整列避免长文本时出错 6 月前 |
![]() |
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 6 月前 |
![]() |
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 6 月前 |
|
Sei · Avalonia/WPF将路由器传递到控制模板 6 月前 |