📄 c++编程思想 -- 第1章 笔记(2).txt
字号:
作者:rick1126
email: rickzhang@sina.com
日期:2001-7-12 13:58:00
1.2 为什么C++会成功
【转变的代价】
. C程序员转换到C++比转换到OOP代价小
. 保持原有的编程"头脑库"可以更有效的在转变过程中获得成果
. 重要的是"头脑库" -- 根植于程序员自身的编程设计模型, 而不是"代码库" -- 只要使用相应的工具就可以转换
【C++的成功因素】
. 提高效率
. 立足实际
. 尽可能地为程序员提供便利
1.2.1 较好的C
【直接在C++下编写C程序】
. 更好的编译器 -- 提供更严格的编程规范, 类型检查
. 引用 -- 运息对于和你输参数和返回值得地址进行处理
. 函数重载 -- 提供名字的复用, 即自身支持多态性无需专门声明类
. 名字空间 -- 加强了名字控制
1.2.2 采用渐进的学习方式
【改良而不是革命】
. C++本身是C的扩充, 而不是新的文法和程序设计模型
. 程序员在学习过程中, 完全可以依照原有的设计思路继续开发, 逐步理解新的特性
. 原有的C代码使用C++编译, 可以得到新的隐藏的错误
1.2.3 运行效率
【模型的重要性】
. 使用C++的一些特性调整原有的C程序可以获得更好的运行效率
. 面向对象的C++程序和C程序速度相差+/-10%
1.2.4 系统更容易表达和理解
【自然模型的优势】
. 使用问题空间的术语描述问题优于使用计算机术语描述问题
. 程序更容易理解, 便于维护, 在整个程序员的生命周期中维护占了很大部分
. 过程语言中的程序 = 算法 + 数据结构
. OOP语言中的程序 = 对象 + 消息
1.2.5 "库"使你事半功倍
【代码复用】
. C++的主要目标是让程序员更容易地使用库, 这是通过将函数库转化为新的数据类型--对象库即类型库实现的
. 各个部分之间的对象名字实施数据部分的隔离, 程序员不必担心名字冲突
. 使用传统类实现了面向对象的代码复用
. 使用模板函数或者类库则附加实现了数据类型的代码复用
1.2.6 错误处理
【异常处理】
. C语言通常使用返回值处理
. C++的异常机制提供了事件驱动的错误处理机制
1.2.7 大程序的设计
【限制问题】
. 传统语言在程序规模上存在限制, 典型表现就是名字冲突
. C++语言的OOP, 模板, 名字空间和异常处理等机制是的大小程序之间的复杂性边界的消失
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -