C# 中的托管代码是什么?

csharpprogrammingserver side programming更新于 2025/10/13 4:07:17

托管代码是指由公共语言运行时 (CLR) 管理执行的代码。CLR 获取托管代码并将其编译为机器码。之后,代码将被执行。

这里的运行时,即 CLR,提供自动内存管理、类型安全等功能。

托管代码是用运行在 .NET 之上的高级语言编写的。例如 C#、F# 等。用任何一种语言的编译器编译的代码都不会生成机器码。但是,您将获得由运行时编译和执行的中间语言代码。

C/C++ 代码被称为"非托管代码",不具备这种特权。这些程序以二进制形式运行,由操作系统加载到内存中。剩下的,程序员就得自己处理了。

C++ 也可以生成在 Windows 上运行的非托管二进制文件。

C# 允许使用不安全上下文在代码中直接使用非托管结构(例如指针)。它设置了一段不受 CLR 管理执行的代码。


相关文章