C#托管代码 CLR
托管代码
是直接编译成机器码,而是编译成中间语言 IL,由 CLR 托管运行。
托管代码就是把底层的一些操作(如内存的读取,释放)全都封装起来了,把有关内存管理的操作全都由CLR来管理,
C#使用垃圾回收,而C++需要手动释放,C#是类型安全,性能较低,性能较高
CLR,公共语言虚拟执行系统
等于说是一个运行环境,底层的比如说内存都已处理好了(垃圾回收器),只需要管逻辑就可以了。
运行的时候先编译成托管代码,然后才编译成机器码
CLR:Common Language Runtime,是一个可由多种编程语言使用的“运行时”。CLR的核心功能(比如内存管理、程序集加载、安全性、异常处理和线程同步)可由面向CLR的所有语言(C#,Visual Basic,F#等)使用。