设为首页收藏本站

嘻皮客娱乐学习网

 找回密码
 中文注册
搜索
打印 上一主题 下一主题
开启左侧

[面试题库] 托管代码(Managed Code)和非托管代码(Unmanaged Code)有什么区别

[复制链接]
跳转到指定楼层
楼主
发表于 2014-11-30 13:58:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
托管代码(Managed Code) 是由 公共语言运行库(CLR common lanaguage runtime)执行的代码,而不是由操作系统直接执行。托管代码也可以调用CLR的运行库服务和功能,比如GC、类型检查、安全支持等等。这些服务和功能提供独立与开发语言的,统一的Managed Code应用程序行为。
托管代码可以使用20多种支持.NET Framework的语言代码, 包括C#, J#, VB.NET, JScript.NET以及C++等等,这些语言贡献.net框架的类库,而且可以被编译成中间语言。 运行库编译器在托管执行环境下编译中间语言使这些语言成为可以执行的代码,并提供数组便见和索引检查,异常处理,垃圾回收等等功能以保证类型的安全。
使用托管代码可以避免很多程序的错误,同时也增强了程序代码的安全性。程序员可以花更多的时间在逻辑设计并减少代码量,同事也意味者缩短开发时间和提供更健壮的程序。
非托管代码不由CLR公共语言运行库执行,而是由操作系统直接执行的代码。 非托管代码必须自己提供垃圾回收,类型检查,安全支持等等服务。
回复

使用道具 举报

小黑屋|手机版|嘻皮客网 ( 京ICP备10218169号|京公网安备11010802013797  

GMT+8, 2024-5-3 07:34 , Processed in 0.192492 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表