《数据结构与算法分析》从C语言到C++语言《数据结构与算法分析》C++的学习用书任何一本你能接触到的C++编程书籍谭教授的书清华王燕《面向对象的理论与C++实践》航空工业赵建周《C和C++程序设计教程》《数据结构与算法分析》C与C++的不同C++在代码上对C的扩充大不相同C:面向过程C++:面向对象《数据结构与算法分析》面向过程程序设计—C语言选定数据结构、设计算法过程或函数
程序执行被看作各过程调用的序列
面向过程编程:程序=数据结构+算法设计思路自顶向下、逐步求精
采用模块分解与功能抽象,自顶向下、分而治之
炒菜吃种菜、洗菜、切菜、炒菜《数据结构与算法分析》面向过程的结构化程序设计方法缺点:可重用性差、数据安全性差、难以开发大型软件和图形界面的应用软件把数据和处理数据的过程分离为相互独立的实体
当数据结构改变时,所有相关的处理过程都要进行相应的修改
每一种相对于老问题的新方法都要带来额外的开销
图形用户界面的应用程序,很难用过程来描述和实现,开发和维护也都很困难
《数据结构与算法分析》面向对象程序设计—C++语言将数据及对数据的操作方法封装在一起,作为一个相互依存、不可分离的整体——对象
对同类型对象抽象出其共性,形成类
主要特征是各对象之间的消息传递和各类之间的继承
类通过一个简单的外部接口,与外界发生关系
对象与对象之间通过消息进行通信
《数据结构与算法分析》面向对象程序设计一个类的集合和各类之间以继承关系联系起来的结构,再加上一个主程序,在主程序中定义各对象并规定它们之间传递消息的规律
面向对象编程:对象=数据结构+算法(封装);程序=对象+对象+对象+……炒菜吃:买净菜、按照烹调说明书炒菜《数据结构与算法分析》面向对象程序设计优点:程序模块间的关系更为简单,程序模块的独立性、数据的安全性就有了良好的