首页 >公司新闻

其他的开发语言为什么没有垃圾回收器

发布时间:2013-10-21     发布者:本地    

为啥其他的语言不跟Java一样实现垃圾回收器?虽然垃圾回收并不能完全解决内存泄漏,但还是有很大用处的。


我只想说现在主流计算机语言中不支持GC的,除了C,C++,还有哪些?稍微高级一些的计算机语言,比如C#,Go,lisp,haskell,乃至javascript,python,不管需不需要跑在VM上,不管需不需要某种形式的runtime,都支持GC,C++只要你自己不犯贱指针满天飞也基本犯不着为垃圾回收问题发愁,只有写C的时候才是真正需要指针穿肠过,引用心中留.


而C不支持GC的原因很简单,历史的原因就是因为C就是这样设计的,请你狠狠地骂Dennis Ritchie;现实的原因是C所使用的地方确实经常需要程序员自己手动管理内存.C++不(完全)支持GC的原因也很简单,因为它要向下兼容C.


上一篇:如何看待haXe这种语言 下一篇:学习C语言的一些建议

相关新闻