託管代碼與非託管代碼的區別

託管的代碼就是把有關內存管理(內存申請,內存釋放,垃圾回收之類的)所有都是.NET的CLR來管理,就是說使用託管的代碼把底層的一些操做都封裝起來了,不能直接進行內存的讀取之類的和硬件相關的操做,優勢就是比較安全,不會出現諸如內存泄露之類的問題,缺點也很明顯,不能直接讀取內存,性能上會有損失,使用起來有時也不夠靈活。安全

非託管的恰好相反,能夠直接進行硬件操做,性能比較高,可是對開發人員的要求也比較高。性能

最直觀的就是C#不推薦使用指針,而C++就可使用指針來直接讀取內存; C#使用垃圾回收,C++要手動的釋放對象……指針

相關文章
相關標籤/搜索