托管很好理解!抽象一点讲就是一些功能你不要自己去实现,而是由clr去实现,由它(clr)去管理.比如指针空间:在vc中你用new 生成,而必须用delete去删除。但在c#中你不要管对象回收,也就是你用new生成对象,但你不必自己删除对象,删除相应不用的对象由clr去完成。
记得你小时候上幼子院,这就是托管(获得幼儿院的服务)
好处:
得到安全保障;
可以和别的小朋友玩(语言相互调用,不托管就没有);
……
有的家里忙就必须托管了(C#、VB……);
有的家里有人照顾就可以不托管(C++);
定义:
托管代码是为面向公共语言运行库的服务编写的代码(请参阅“什么是公共语言运行库?”)。为了面向这些服务,该代码必须向运行库提供最低级别的信息(元数据)。默认情况下,所有 C#、Visual Basic .NET 和 JScript .NET 代码都受托管。默认情况下,Visual Studio .NET C++ 代码不受托管,但编译器可以通过指定命令行开关 (/CLR) 来产生托管代码。
托管应用程序和非托管应用程序
最新推荐文章于 2023-11-15 15:04:41 发布
托管代码是指由CLR管理的代码,提供安全保障,如自动对象回收,支持多种语言交互。C#、VB.NET等默认是托管的,而C++默认非托管。非托管代码则需要手动管理内存,例如C++中的new和delete。托管数据由垃圾回收器分配和释放,非托管数据则需要程序员手动管理。托管带来的好处包括内存安全和跨语言交互。
摘要由CSDN通过智能技术生成