C#托管代码和非托管代码

sq1402 2008-09-12 02:07:47
请问C#编写程序时,那些代码属于托管代码,那些代码属于非托管代码?
...全文
8574 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
Handsome__Guy 2012-08-22
  • 打赏
  • 举报
回复
历经4年的帖子在教育一代又一代的coder
yudianvictor 2012-03-22
  • 打赏
  • 举报
回复
学习了,有空常来看看
wo123deshenghuo 2011-08-24
  • 打赏
  • 举报
回复
原来是这样子哦,托管了
荃子 2010-12-29
  • 打赏
  • 举报
回复
看了大家的评论,让人认为托管就是垃圾回收的意思。。。
荃子 2010-12-29
  • 打赏
  • 举报
回复
学习一下
smeron 2010-10-12
  • 打赏
  • 举报
回复
学习学习!
ReserveRainbow 2010-10-08
  • 打赏
  • 举报
回复
不错,学习了
beingo_1990 2010-09-02
  • 打赏
  • 举报
回复
长知识了
fthappy520 2010-06-07
  • 打赏
  • 举报
回复
受教了!
hxy2261 2010-05-11
  • 打赏
  • 举报
回复
加深哈影响。。。。。。。
wei_wu49036233 2010-04-17
  • 打赏
  • 举报
回复
不需要自己释放内存使用,程序退出编程工具会自动释放,进行垃圾回收机制。
yanglei492064776 2009-10-17
  • 打赏
  • 举报
回复
收益
gaocong3 2009-07-09
  • 打赏
  • 举报
回复
学习了
孤剑 2008-09-15
  • 打赏
  • 举报
回复
告诉你一个理性认识吧

非托管: c++ ,vb 等等,只要不是用 .net 写的程序,都可以认为是非托管
托管: .net框架下的程序 。c#,vb.net 等等。
fwu18 2008-09-15
  • 打赏
  • 举报
回复
在DOTNET 3.5 和其他也一樣嗎?
sageking2 2008-09-14
  • 打赏
  • 举报
回复
COM/COM++组件,ActiveX控件,API函数,指针运算,自制的资源文件...这些的非托管的,其它就是托管的.
hryang 2008-09-14
  • 打赏
  • 举报
回复
最近刚做过些跨平台调用的,对托管和非托管的问题,了解得也比较深刻....

一般C#里面编写的代码的都是托管的代码,就是,对内存的管理,可以由平台本身帮你控制,而VC里面的代码则为非托管代码,它们所分配的内存空间必须由本身来释放....

另外,从非托管代码,与托管的代码的转化,Marshal类是一个不得不深入研究的类...... 非常的奥妙!!!!
lextm 2008-09-14
  • 打赏
  • 举报
回复
一般来说,.NET框架自带的类型绝大部分都只涉及托管资源,因此不必太多担心。但是只要是实现了IDisposable的.NET类型,都内部实现一般都使用了Win32的非托管资源。为了确保你在使用这些类型时候不至于造成非托管资源的泄漏,而且能够及时回收这些资源,微软特别设计了所谓的Dispose模式。

有可能的话,请参看CLR via C#或者Effective C#这样的书籍来了解相关的信息。对于自己设计类库的程序员来说,熟悉和掌握这些知识更加重要。
ProjectDD 2008-09-14
  • 打赏
  • 举报
回复
都是内存托管的,如果你要自己管理内存那就用

unsafe{} 关键字标注出一块区域,你可以在这里使用指针,管理内存,这里代码不托管
LovingAlison 2008-09-14
  • 打赏
  • 举报
回复
在clr上编译运行的代码就是托管代码
非CLR编译运行的代码就是非托管代码
非托管代码用dispose free using 释放
大概吧
加载更多回复(5)

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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