C# 中的托管代码是什么?
csharpprogrammingserver side programming更新于 2025/10/13 4:07:17
托管代码是指由公共语言运行时 (CLR) 管理执行的代码。CLR 获取托管代码并将其编译为机器码。之后,代码将被执行。
这里的运行时,即 CLR,提供自动内存管理、类型安全等功能。
托管代码是用运行在 .NET 之上的高级语言编写的。例如 C#、F# 等。用任何一种语言的编译器编译的代码都不会生成机器码。但是,您将获得由运行时编译和执行的中间语言代码。
C/C++ 代码被称为"非托管代码",不具备这种特权。这些程序以二进制形式运行,由操作系统加载到内存中。剩下的,程序员就得自己处理了。
C++ 也可以生成在 Windows 上运行的非托管二进制文件。
C# 允许使用不安全上下文在代码中直接使用非托管结构(例如指针)。它设置了一段不受 CLR 管理执行的代码。

