近日踱入书店,惊讶的发现国内又出了一本C++教材.红色封面,厚重庄严,书脊上印有“国家XXX优秀教材”等熟悉字样,拿起来一翻,作者竟是如雷贯耳的谭浩强老先生.这位出生C语言的老教授在C领域的贡献可以说是“地球人都知道”(连我这个不学C的都知道^_^).
但是,令我惊讶的事情来了:
翻开目录,从头到尾浏览了一遍...
嗯,不错,中规中矩,有条有理,井然有序,巨细靡遗(还有什么成语来着?^_^!)
但是,(咦,我为什么要说“但是”呢?),我惊讶的discover:居然整个目录没有任何地方提及template,或模板字样,更不用说GP了(哦,你说STL?好像也没有).仿佛C++中从来没有GP似的(:$),一时间我对自己的认识产生了怀疑:)
我当时就继续往后翻,想看看是不是目录的后半部分被撕掉了(^o^),但是很显然,页码是连续的,我错了(:$)

当然,这是一本教材,教材是学生入门最重要的工具,应当给予十分的重视,就象启蒙教育一样.
不能不说谭浩强老先生不重视,翻开他的这本书,仍然是到处可见实践中的真知,但是Bjarne Stroustrup早就说过,C++并非一个better C.C++是一门全新的语言,C++中的一个最重要的范式就是GP,通用(general purpose)的编程思想是C++中最为优雅而强大的范式.怎能忘了GP?

无论是<Essential C++>还是<Accelerated C++>(它们都是极为经典的入门教材,特别是后者,作者Andrew Koenig是C++社区中最有发言权的人之一,也是最善长深入浅出的长者,还是唯一一个名字出现在ISO.C++标准中的人(见koenig lookup) ),他们都把STL,GP放到显眼的位置,教育程序员一开始就有generic programming的思想,把这种思想融入到日常的设计和编码中--从它们那里,我们看到C++的教育正走上真正意义上的正轨.

但是,(咦,我为什么又要说“但是”呢?^_^!),作为国内知名度如此之高的谭先生,出了这么一本<C++程序设计>本来是件好事,虽然C++经典入门教程已经出世,但是有”原汁原味”符合国人习惯的书总是好事吧,然而谭教授的教育方式却是史前时代的“C++ as a better C”,这就有点那什么了.现在国内的C++应用仍然停留在较浅的层次和教育可以说是分不开的,教育是至关重要的一环,但是我们的谭教授尽力了吗?

虽然谭教授的书中可能并没有错误,并没有误导学生,可以说是 “do things right”,然而,谭教授却没有“do the right thing”.

所以说,谭教授的书真的没有误导学生吗?

或者,思想上的误导才是最可怕的误导.

[BTW.后来我忍不住又把书翻了一下,这下不只翻目录了,我翻看了关于类的部分,总算在一个“角落”翻到了关于模板语法的讲解,聊聊几行,“言简意赅”,对应一下目录,原来位于一个类似“扩展讲解”的部分(具体目录名不记得了).而函数模板,我也就没有心思再找了,模板偏特化,函数模板重载...关于模板的设计,通用(或称泛型)编程思想的介绍,反正我没有看到,或许会在那个角落再次“言简意赅”的提一下吧,我已经没有兴趣了]

转载于:https://my.oschina.net/abcijkxyz/blog/720557

关于谭浩强老先生的《C++程序设计教程》相关推荐

  1. 关于谭浩强老先生的《C++程序设计教程》 1

    近日踱入书店,惊讶的发现国内又出了一本C++教材.红色封面,厚重庄严,书脊上印有"国家XXX优秀教材"等熟悉字样,拿起来一翻,作者竟是如雷贯耳的谭浩强老先生.这位出生C语言的老教授 ...

  2. 有一个已排好序的数组,要求输入一个数后,按原来排序的规律将它插入数组中,谭浩强《c语言程序设计》第六章第四题

    题目 本题是谭浩强<c语言程序设计>第六章第四题 题目:有一个已排好序的数组,要求输入一个数后,按原来排序的规律将它插入数组中. 以下是本篇文章正文内容,欢迎朋友们进行指正,一起探讨,共同 ...

  3. 输出所有3位数的水仙花数,例:153=1的3次方+5的3次方+3的3次方 谭浩强《c语言程序设计》第五章第八题

    题目 本题是谭浩强<c语言程序设计>第五章第八题 题目:输出所有3位数的水仙花数,例:153=1的3次方+5的3次方+3的3次方 提示:以下是本篇文章正文内容,欢迎朋友们进行指正,一起探讨 ...

  4. c程序设计语言看第几版,到底该怎样评价谭浩强版《C程序设计》?

    原标题:到底该怎样评价谭浩强版<C程序设计>? 我想学过C语言的人都应该对谭浩强版<C程序设计>不陌生,有人对它大加赞赏,也有人对它吐槽颇多.那我们究竟应该怎样看待这本书呢?今 ...

  5. 1个球从100m落下,每次时,反跳原高度的一半,再落,再反弹,求第10次落地共经过多少m,第10次反弹多高。 谭浩强《c语言程序设计》第五章第十一题

    题目 本题是谭浩强<c语言程序设计>第五章第十一题 题目:1个球从100m落下,每次时,反跳原高度的一半,再落,再反弹,求第10次落地共经过多少m,第10次反弹多高. 提示:以下是本篇文章 ...

  6. 用筛选法求100之内的素数。谭浩强《c语言程序设计》第六章第一题

    题目 本题是谭浩强<c语言程序设计>第六章第一题 题目:用筛选法求100之内的素数. 以下是本篇文章正文内容,欢迎朋友们进行指正,一起探讨,共同进步.--来自考研路上的lwj 一.解题思路 ...

  7. 关于谭浩强著的C程序设计(第四版)的“规范化的指数形式”和“标准化指数形式”的问题

    C程序设计(第四版)  谭浩强 著 1:在该书P50浮点型数据中这样写道:在指数形式的多种表示方式中把小数部分中 小数点前的数字为0.小数点后第1位数字不为0的表示形式称为 规范化的指数形式,如0.3 ...

  8. 谭浩强版 c语言程序设计,c语言程序设计

    c语言程序设计 (2000年清华大学出版社出版的图书) 编辑 锁定 讨论 上传视频 <c语言程序设计>是2000年清华大学出版社出版的图书,作者是谭浩强.[1] 书    名 C语言程序设 ...

  9. 为什么很多人吐槽谭浩强的C语言程序设计,端碗吃饭放碗骂娘?

    这个观点在网络上已经论战了很长时间,出现这种情况还是历史遗留问题,谭浩强出的C语言教材几乎是国内的第一版,由于中英翻译问题或者对编程文化理解的差异性导致出来的书多多少少存在一些纰漏.不能只是记住其缺点 ...

最新文章

  1. 国产最大AI开源框架再升级:一口气发布9大新产品,顺便送出亿元GPU算力
  2. python实现pdf转word详解_手把手|20行Python代码教你批量将PDF文件转为Word格式(包教包会)...
  3. Windows最全快捷键
  4. 【数据库设计-3】菜单设计
  5. C#控制台程序中处理2个关闭事件的代码实例
  6. centos7 python3.6编译安装
  7. 口算练习题(洛谷P1957题题解,Java语言描述)
  8. docker tomcat启动无法进入欢迎页面
  9. Struts2之前台表单传值到后台Action方法总结
  10. python http get 请求_Python:编写HTTP Server处理GET请求
  11. pitr 原理_PostgeSQL 数据库备份与恢复实验 (PITR)
  12. mysql update 顺序_MySQL的Update语句Set顺序问题
  13. linux iphone文件,在linux下生成iphone所需要的视频和音频文件的方法总结
  14. android网络配置
  15. 屌丝最爱 蹭网卡 神器+使用说明
  16. bzoj3332: 旧试题
  17. 大学生活这样过,等着 Offer 飞来找 | 程序员有话说
  18. [转载]淘宝技术发展
  19. Hadoop学习(二)---Secondary结点的配置以及HDFS的常用命令以及API的使用
  20. python微服务开发pdf_《微服务设计》中文完整版PDF电子书下载

热门文章

  1. matlab中de 乘法符号,FPGA 中的有符号数乘法
  2. 拒绝无脑跳转“下载某度APP“!
  3. win10计算机拒绝访问,Win10文件访问被拒绝如何解决?
  4. QRCODE 根据url生成二维码图片
  5. 打通前后端全栈开发node+vue+mongodb进阶
  6. 法国为何是伟大数学家的摇篮?
  7. 十个模型,总结产品经理沟通方法论
  8. 华为服务器光盘安装系统按f几,服务器操作系统安装
  9. 一点一点解读紫书中例子--大整数类BigInteger (1)
  10. 建议收藏 | 数据化、信息化、数字化、智能化到底都是指什么?彼此有什么联系?