托管代码与非托管代码的区别

托管的代码就是把有关内存管理(内存申请,内存释放,垃圾回收之类的)全部都是.NET的CLR来管理,就是说使用托管的代码把底层的一些操作都封装起来了,不能直接进行内存的读取之类的和硬件相关的操作,优点就是比较安全,不会出现诸如内存泄露之类的问题,缺点也很明显,不能直接读取内存,性能上会有损失,使用起来有时也不够灵活。

非托管的刚好相反,可以直接进行硬件操作,性能比较高,但是对开发人员的要求也比较高。

最直观的就是C#不推荐使用指针,而C++就可以使用指针来直接读取内存; C#使用垃圾回收,C++要手动的释放对象……

posted @ 2019-07-24 00:07  Z大山  阅读(289)  评论(0编辑  收藏  举报