设为首页 加入收藏

TOP

1.1.2 内存管理是否自动释放
2013-10-07 00:33:19 来源: 作者: 【 】 浏览:61
Tags:1.1.2 内存 管理 是否 自动 释放

1.1.2  内存管理是否自动释放

C++(www.cppentry.com)和C#、Java这3种语言中,C++(www.cppentry.com)是最早出现的,保持了对C的兼容性,允许指针的存在,允许程序员手动高效地管理、使用内存(尽管这也是最容易引起问题的地方)。C++(www.cppentry.com)在发展的过程中,不断地补充语言特性,使得C++(www.cppentry.com)成为最灵活的编程(www.cppentry.com)语言之一。C++(www.cppentry.com)语言的灵活性是建立在其复杂的语法之上的,因此对于初学者来说,很有可能因此望而却步,但是如果坚持下去,就会发现,再去看C#、Java语法时会感到很轻松。

C#、Java语言相对C++(www.cppentry.com)语言来说,在语法上要简单得多,因此初学者很容易上手。二者抛弃了最容易引起问题的指针,对内存的管理完全自动化,这样虽然带来了程序的稳定性和安全性,但是在某种程度上丢失了效率。

提示:因为内存管理自动化,C#、Java语言拥有垃圾自动回收机制,在C++(www.cppentry.com)中,申请的内存必须由程序员自己手动释放,如果忘记这一点就会引起内存泄露。

C++(www.cppentry.com)丰富的语言特性在一定程度上弥补了如下不足:

部分C++(www.cppentry.com)库拥有内存管理机制,如STL、Boost等。

C++(www.cppentry.com)拥有智能指针。

某些C++(www.cppentry.com)库实现了垃圾回收功能。

【责任编辑:夏书 TEL:(010)68476606】

回书目   上一节   下一节

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Visual C++ 6.0完全自学宝典 目录 下一篇1.1.1 面向对象还是面向过程

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: