如何在内部实现 C# 中的引用
本文关键字:引用 实现 在内部 | 更新日期: 2023-09-27 17:55:33
只是想知道 C# 中的引用是如何在内部实现的?
别名? 常量指针?
对此仍然需要一个详细的答案。
谢谢。
在当前的实现中,引用只是一个指针。
对于您的程序,引用和指针之间完全没有区别,引用的所有特殊之处都由编译器和垃圾回收器处理。
真正需要知道的是,引用不会比指针占用更多的空间,并且使用引用不需要额外的步骤。引用不是指向指针的指针,也不是必须查找才能访问实际数据的标识。
.NET 内存管理不像其他一些框架那样使用引用计数,因此在创建或删除引用时无需维护计数器。
参考资料:
- .NET 类型内部 - 从Microsoft CLR 的角度来看
- .NET 中的堆、堆栈、引用类型和值类型
- 探索 CLR(类型)