C++ 是一门难学易用的语言!
译 序
C++ 是一门难学易用的语言!
C++ 的难学,不仅在其广博的语法、语法背后的语义、语义背后的深层思维、深层思维背后的对象模型;C++ 的难学,还在于它提供了4种不同(相辅相成)的编程思维模型:procedural-based,object-based,object-oriented,generic paradigm。
世上没有白吃的午餐。又要有效率,又要有弹性,又要前瞻望远,又要回溯相容,又要能治大国,又要能烹小鲜,学习起来当然就不可能太简单。
在如此庞大复杂的机制下,万千使用者前赴后继的动力是:一旦学成,妙用无穷。
C++ 相关书籍之多,车载斗量,如天上繁星,如过江之鲫。广博如四库全书者有之(The C++ Programming Language、C++ Primer),深奥如重山复水者有之(The Annotated C++ Reference Manual, Inside the C++ Object Model),细说历史者有之(The Design and Evolution of C++, Ruminations on C++),独沽一味者有之(Polymorphism in C++, Genericity in C++),独树一帜者有之(Design Patterns, Large Scale C++ Software Design, C++ FAQs),程序库大全有之(The C++ Standard Library),另辟蹊径者有之(Generic Programming and the STL),工程经验之累积亦有之(Effective C++, More Effective C++, Exceptional C++)。
这其中,“工程经验之累积”对已具 C++ 相当基础的程序员而言,有着致命的吸引力与立竿见影的帮助。Scott Meyers 的Effective C++ 和 More Effective C++ 是此类佼佼,Herb Sutter 的 Exceptional C++ 则是后起之秀。
这类书籍的一个共同特色是轻薄短小,并且高密度地纳入作者浸淫于 C++/OOP 领域多年而广泛的经验。它们不但开扩读者的视野,也为读者提供各种 C++/OOP 常见问题或易犯错误的解决模型。某些小范围主题诸如“在base classes 中使用 virtual destructor”、“令operator= 传回 *this 的 reference”,可能在百科型 C++ 语言书籍中亦曾概略提过,但此类书籍以深度探索的方式,让我们了解问题背后的成因、最佳的解法,以及其他可能的牵扯。至于大范围主题,例如smart pointers,reference counting,proxy classes,double dispatching,基本上已属design patterns的层级!
这些都是经验的累积和心血的结晶!
我很高兴将以下两本优秀书籍,规划为一个系列,以郑重的形式呈现给您:
1. Effective C++ 2/e, by Scott Meyers, AW 1998
2. More Effective C++, by Scott Meyers, AW 1996
本书不但与英文版页页对译,保留索引,并加上译注、交叉索引 、读者服务 。
这套书将对于您的程序设计生涯带来重大帮助。翻译这套书籍的过程中,我感觉来自技术体会上的极大快乐。我祈盼(并相信)您在阅读此书时拥有同样的心情。
侯捷 2003/03/07 于台湾新竹
jjhou@jjhou.com
http://www.jjhou.com
转载于:https://www.cnblogs.com/broadview/archive/2011/01/06/1926986.html
C++ 是一门难学易用的语言!相关推荐
- 联合国公布世界上最难学的十大语言
发音优美的语言 在国际语言学界,日语,意大利语和西班牙语,是三个公认的发音优美的语言,其中,日语更是排在第一位.在语言学上,评价一种语言的发音是否 优美,有一个公认的标准,那就是辅音数量和元音数量的比 ...
- lisp不是函授型语言_为什么Common Lisp是一门难学的语言
Common Lisp学起来不容易,很多人花了很久时间然而效果有限.为什么呢?我来试着总结一下原因.首先来看语言自身的原因: 1. Common Lisp是一个允许高度定制的语言,在语言的不同层面,都 ...
- 【难学易用c++ 之 继承】
目录: 前言 一.继承的概念及定义 (一)概念 (二)继承定义 继承关系和访问限定符 继承基类成员访问方式的变化 二.基类和派生类对象赋值转换 三.继承中的作用域 四.派生类的默认成员函数 五.继承与 ...
- 最易/难学习的编程语言榜单出炉,C++最难学?
你还记得你第一次写代码的时候使用的是什么编程语言吗?在学习编程的过程中,你认为最简单易学或是最难上手的语言是什么呢?如果给新手推荐入门的编程语言,你会如何推荐或是建议他们避开什么语言呢? 在线学习平台 ...
- C++ 最难学?最易/难学习的编程语言 TOP 5 来了!
在线学习平台 Springboard 罗列了一个最容易学习和最难学的编程语言 Top 5 榜单. 事实上,问一个程序员最容易学习的语言,就像问一个人他们最喜欢的冰淇淋.每个人都有自己的偏好,永远没有真 ...
- 哪一门编程语言入门很难学呢?看看这份编程语言排行榜
编程语言是开发者们代码工作的核心,也是许多开发者最爱讨论的话题.编程语言的选择对开发者和工具制造商都十分重要,前者需要保持最新和具备市场潜力的技能,后者则需确保他们能够提供最有用的SDK. 开发者经济 ...
- python 框架好学吗-python的flask框架难学吗
Flask框架难学吗?它和Django哪个更容易一些,这可能是学Python web开发的同学经常问的问题,下面来说一下flask框架. Flask是python的web框架,最大的特征是轻便,让开发 ...
- 为什么模电这么难学?一文带你透彻理解模电
想必模电就是小伙伴们非常头疼的一门课程,最深刻的感受莫过于就是"老师说第一遍不懂,第二遍还是不懂,第三遍还是不懂." 网友对模电有以下总结: 天书般难懂. 模电=魔电 本科模电就够 ...
- 学python和java哪个难?,java和python哪个难学
java和python哪个好学 ①python比Java简单,学习成本低,开发效率高;②Java运行效率高于python,尤其是纯python开发的程序,效率极低;③Java相关资料多,尤其是中文资料 ...
最新文章
- 启动多个pid_西门子S7-300PLC实现PID控制
- 【正一专栏】欧陆烽火——珍惜像伊布一样的男人!
- Apache与Tomcat使用
- 【CSS 】动画animation
- 基于FPGA的前向纠错算法
- 阿里DRUID数据源
- 边缘设备上的实时AI虫害消除:入门
- azure云数据库_Azure Data Studio中Windows的数据库管理工具扩展
- 讯飞输入法粤语语音识别率达95%支持粤转普
- 宫崎峻《となりのトトロ》(龙猫)全剧本(中日对照)(2)
- graphx项目实战 — 航班飞行网图分析
- 大数据下的图片类别以及图片爬取详细的过程(一)
- 3D建模都用哪些软件?
- No debugging symbols found in a.out
- 硕士毕业论文的致谢怎么写
- t460p加固态硬盘 thinkpad_不仅是硬件升级!ThinkPad T460p评测
- Android通过OMA获得ESE的CPLC
- 为什么选择0.1uF电容而不是0.01uF电容?
- MATLAB-GUI登录界面
- 【C语言】通讯录(文件版)