初学VC.net,什么叫托管??

cg2003 2004-07-17 08:11:36
初学VC.net,什么叫托管??请详细的解释一下,托管有什么作用??
...全文
783 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
popular21cn 2004-08-17
  • 打赏
  • 举报
回复
没有人回答我的问题??太难了?--->往上数第七层
ctan 2004-08-17
  • 打赏
  • 举报
回复
楼上的真幽默, 不过还比较形象
kuibobo 2004-08-16
  • 打赏
  • 举报
回复
补充一下:
由了托管后(托儿所),你的程序(Baby)要申请的资源(要吃饭)和要释放的资源(排泄)都由托管(托儿所)处理,这时,你就不用担心内存泄漏(拉到裤子上)的问题了!
kuibobo 2004-08-16
  • 打赏
  • 举报
回复
最简单的托管解释就是不用你管,就象以前的托儿所

由CLR(托儿所)管理你的程序(Baby),这时候你就去上班
xiaonian_3654 2004-08-15
  • 打赏
  • 举报
回复
托管就是带套
popular21cn 2004-08-13
  • 打赏
  • 举报
回复
看了ctan的留言,对CLR有了一个定性的了解。那我想问一下,CLR 与 C Runtime ,RTTI 这些类似的词汇(从词面来讲都是运行时)之间有什么联系和区别?运行时在编译系统里发挥了哪些的作用?怎样发挥的?略谈一下吧!
ctan 2004-08-12
  • 打赏
  • 举报
回复
用于开发.NET应用的语言有VC#、VB.NET和VC++托管扩展(Managed Extensions for C++)。其中C#是开发.NET的元语言,而C++托管扩展是在C++基础上建立起来的,用来为VC++程序员开发.NET框架应用程序而设计。C++托管扩展常称之为“托管C++”。

那么什么是托管C++?

在回答这个问题,首先要搞清楚什么是“托管”(Managed)。托管是.NET的一个专门概念,它是融于通用语言运行时(CLR)中的一种新的编程理念,因此我们完全可以把“托管”视为“.NET”。那么什么是“通用语言运行时”?通用语言运行时是.NET 框架应用程序的执行引挚。它提供了许多服务,其中包括:代码管理(装入和执行)、类型安全性验证、元数据(高级类型信息)访问、为管理对象管理内存、管理代码,COM对象和预生成的DLLs(非管理代码和数据)的交互操作性、对开发人员服务的支持等等。

也就是说,使用托管C++意味着,我们的代码可以被CLR所管理,并能开发出具有最新特性如垃圾自动收集、程序间相互访问等的.NET框架应用程序。

社会栋梁 2004-08-11
  • 打赏
  • 举报
回复
c#和vb都是基于CLR的
社会栋梁 2004-08-11
  • 打赏
  • 举报
回复
简单理解 可以调用c#和vb的代码就是管托
canoe_eyes 2004-08-10
  • 打赏
  • 举报
回复
非托管的项目 可以编译为托管的.可以在编译的时候设置它 运行在.NET CLR.
托管 manager
f非托管 unmanager 英文理解起来比中文好多了.
qxb 2004-08-05
  • 打赏
  • 举报
回复
所谓托管也叫受管,就是说编译后的代码是受到安全管理的,这个管理的机器就是.NET的框架系统。代码运行环境受到限制!!
effenberg 2004-07-29
  • 打赏
  • 举报
回复
.net程序由.net runtime管理执行的,所以写.net的程序代码就叫开发托管代码
SimPilot 2004-07-29
  • 打赏
  • 举报
回复
简单地说,运行在.NET CLR上的代码就叫托管代码。
triout 2004-07-17
  • 打赏
  • 举报
回复
在你创建一个项目的时候,你就选择了托管还是非托管,这里是影响编译的第一个地方。

另外,在写代码的时候,如果是非托管的,通常使用MFC类库,VC.NET同VC6区别不大,如果是托管的,那么象C#一样,使用的是.Net FrameWork的类库。
fanyuwang 2004-07-17
  • 打赏
  • 举报
回复
应该是可以运行于CLR上的C++语法吧。
cg2003 2004-07-17
  • 打赏
  • 举报
回复
to triout(笨牛)
托管的项目不能编译为非托管的,同样非托管的项目也不能编译为托管的,因为他们的区别在写代码的时候就有

请问写代码的时候怎样区别它是托管的还是非托管的??
triout 2004-07-17
  • 打赏
  • 举报
回复
到.NET时代(其实早就有,如VB、JAVA,只是很多人没有在意),软件编程有两种结果:基于ASSEMBLE的传统编程和基于伪代码(或者说中间代码)的编程。

VC的一般编译是传统编译为机器码了,有了.NET,VC增加了对中间代码编译结果的支持。

所谓托管也叫受管,就是说编译后的代码是受到安全管理的,这个管理的机器就是.NET的框架系统。

VC.NET开发托管程序和用VB.NET、C#开发程序的结果是一样的,因为在C#、VB.NET中,不能编译成非托管的代码,所以对托管这个词讨论较少。

VC.NET支持这两种编译结果,就类似以前的VB。但一点区别是,VC项目要么是托管的要么是非托管的,托管的项目不能编译为非托管的,同样非托管的项目也不能编译为托管的,因为他们的区别在写代码的时候就有,而不象VB是在编译时决定。


以上就是我的理解,不知是否正确,还请指正并补充。
wolftop 2004-07-17
  • 打赏
  • 举报
回复
将代码交给CLR

7,540

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 VC.NET
社区管理员
  • VC.NET社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧