C++语言99个常见编程错误:避免编码和设计中的常见问题

C++语言99个常见编程错误:避免编码和设计中的常见问题
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] (Dewhurst S.C) ,
2009-08
版次: 1
ISBN: 9787302199397
定价: 39.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 275页
字数: 404千字
正文语种: 简体中文
49人买过
  •   《C++语言99个常见编程错误》是C++大师StephenC.Dewhurst在多年教授C++课程中所遇到的常见错误的心得笔记上编写而成的。《C++语言99个常见编程错误》所有章节都从一个众所周知的、在日常编码或设计实践经常遭遇的问题入手,先指出其不足,再对其背后思想中存在的合理与不合理之处深入剖析,最后取其精华弃其糟粕,给出一个简洁、通用、美轮美奂的方案,指出有关如何规避或纠正它们的建议,从而有助于C++软件工程师避免重蹈他们前辈的覆辙。   StephenC.Dewhurst,是贝尔实验室里最早使用C++语言的人之一。他将C++应用于编译器设计、电子商务、嵌入式通信等领域已有18年以上的经验。他是“ProgramminginC++”一书的合作者,是“C/C++UsersJournal”杂志的编辑,是“C++Report”的专栏作家。他是两个C++编译器的作者,发表过大量有关编译器设计和C++语言编程技巧的论文。 译者序:技术翻译——一种笔记体式的创作尝试
    第1章基础问
    常见错误1:过分积极的注释
    常见错误2:幻数
    常见错误3:全局变量
    常见错误4:未能区分函数重载和形式参数默认值
    常见错误5:对引用的认识误区
    常见错误6:对常量(性)的认识误区
    常见错误7:无视基础语言的精妙之处
    常见错误8:未能区分可访问性和可见性
    常见错误9:使用糟糕的语言
    常见错误10:无视(久经考验的)习惯用法
    常见错误11:聪明反被聪明误
    常见错误12:嘴上无毛,办事不牢

    第2章语法问题
    常见错误13:数组定义和值初始化的语法形式混淆
    常见错误14:捉摸不定的评估求值次序
    常见错误15:(运算符)优先级问题
    常见错误16:for语句引发的理解障碍
    常见错误17:取大优先解析原则带来的问题
    常见错误18:声明饰词次序的小聪明
    常见错误19:“函数还是对象”的多义性
    常见错误20:效果漂移的类型量化饰词
    常见错误21:自反初始化
    常见错误22:静态连接类型和外部连接类型
    常见错误23:运算符函数名字查找的反常行为
    常见错误24:晦涩难懂的operato->

    第3章预处理器问题
    常见错误25:使用≠}denne定义的字面量
    常见错误26:使用#define定义的伪函数(函数宏)
    常见错误27:≠if的滥用
    常见错误28:断言(assert宏)的副作用

    第4章类型转换问题
    常见错误29:以void*为类型转换的中介类型
    常见错误30:截切问题
    常见错误31:对目标类型为指涉物为常量的指针类型的类型转换的认识误区
    常见错误32:对以指涉物为指向常量的指针类型的
    类型为目标类型的类型转换的认识误区
    常见错误33:对以指涉物为指向基类类型的指针类型的
    类型为目标类型的类型转换的认识误区
    常见错误34:指向多维数组的指针带来的问题
    常见错误35:未经校验的向下转型
    常见错误36:类型转换运算符的误用
    常见错误37:始料未及的构造函数类型转换
    常见错误38:在多继承条件下进行强制类型转换
    常见错误39:对非完整类型做强制类型转换
    常见错误40:旧式强制类型转换
    常见错误41:静态强制类型转换
    常见错误42:形式参数引发临时对象生成的初始化
    常见错误43:临时对象的生存期
    常见错误44:引用和临时对象
    常见错误45:(动态强制类型转换运算符)dynamic-cast带来的多义性解析失败
    常见错误46:对逆变性的误解

    第5章初始化问题
    常见错误47:赋值与初始化混淆
    常见错误48:位于非适当作用域的变量
    常见错误49:未能意识到C++语言中复制操作的固守行为
    常见错误50:按位复制的class对象
    常见错误5l:未能区分构造函数中的初始化和赋值
    常见错误52:未能在成员初始化列表中保持次序一致性
    常见错误53:对于虚基类(子对象)进行默认初始化
    常见错误54:复制构造函数对基类子对象初始化的未预期行为
    常见错误55:运行期静态初始化次序
    常见错误56:直接与复制初始化
    常见错误57:对参数的直接初始化
    常见错误58:无视返回值优化
    常见错误59.在构造函数申初始化静态(数据)成员

    第6章内存和资源管理问题
    常见错误60:未能区分纯量与数组的内存分配机制
    常见错误61:内存分配失败校验
    常见错误62:(用自定义版本)替换全局的内存管理运算符(所调用的函数)
    常见错误63:成员版本的operatornew和operatordelete的作用域和调用机制混淆
    常见错误64:抛出字符串字面常量(作为异常对象)
    常见错误65:未能正确理解和利用异常处理机制
    常见错误66:滥用局部量地址
    常见错误67:未能采用RAII(资源获取即初始化)习惯用法
    常见错误68:对autoptr的误用

    第7章多态问题
    常见错误69:类型特征码
    常见错误70:将基类析构函数声明为非虚函数
    常见错误71:对非虚(成员)函数的遮掩
    常见错误72:(以)过分灵活的(方式滥用)模板方法设计模式
    常见错误73:重载虚函数
    常见错误74:为参数指定默认初始化物的虚函数
    常见错误75:在构造函数和析构函数中调用虚函数
    常见错误76:虚赋值
    常见错误77:未能区分(函数的)重载、改写和遮掩
    常见错误78:未能深入理解虚函数和改写的实现机制
    常见错误79:支配原则议题

    第8章类型设计问题
    常见错误80:取/设状态接口
    常见错误81:常量和引用数据成员
    常见错误82:未能理解常量成员函数
    常见错误83:未能区分强聚合和弱聚合
    常见错误84:非适当的运算符重载
    常见错误85:(运算符)优先级和重载
    常见错误86:友元与成员运算符
    常见错误87:自增/自减运算符的问题
    常见错误88:对模板化的复制操作的认识误区

    第9章继承谱系设计问题
    常见错误89:持有class对象的数组
    常见错误90:非适当的容器类型之可替换性
    常见错误9l:未能理解protected访问层级
    常见错误92:为代码复用而以public方式继承
    常见错误93:以public方式继承抽象类
    常见错误94:未能运用继承谱系的退化形式
    常见错误95:继承的滥用
    常见错误96:依类型分派的控制结构
    常见错误97:单根谱系
    常见错误98:向class对象打探隐私
    常见错误99:权能查询问题
    中英文术语对照表
  • 内容简介:
      《C++语言99个常见编程错误》是C++大师StephenC.Dewhurst在多年教授C++课程中所遇到的常见错误的心得笔记上编写而成的。《C++语言99个常见编程错误》所有章节都从一个众所周知的、在日常编码或设计实践经常遭遇的问题入手,先指出其不足,再对其背后思想中存在的合理与不合理之处深入剖析,最后取其精华弃其糟粕,给出一个简洁、通用、美轮美奂的方案,指出有关如何规避或纠正它们的建议,从而有助于C++软件工程师避免重蹈他们前辈的覆辙。
  • 作者简介:
      StephenC.Dewhurst,是贝尔实验室里最早使用C++语言的人之一。他将C++应用于编译器设计、电子商务、嵌入式通信等领域已有18年以上的经验。他是“ProgramminginC++”一书的合作者,是“C/C++UsersJournal”杂志的编辑,是“C++Report”的专栏作家。他是两个C++编译器的作者,发表过大量有关编译器设计和C++语言编程技巧的论文。
  • 目录:
    译者序:技术翻译——一种笔记体式的创作尝试
    第1章基础问
    常见错误1:过分积极的注释
    常见错误2:幻数
    常见错误3:全局变量
    常见错误4:未能区分函数重载和形式参数默认值
    常见错误5:对引用的认识误区
    常见错误6:对常量(性)的认识误区
    常见错误7:无视基础语言的精妙之处
    常见错误8:未能区分可访问性和可见性
    常见错误9:使用糟糕的语言
    常见错误10:无视(久经考验的)习惯用法
    常见错误11:聪明反被聪明误
    常见错误12:嘴上无毛,办事不牢

    第2章语法问题
    常见错误13:数组定义和值初始化的语法形式混淆
    常见错误14:捉摸不定的评估求值次序
    常见错误15:(运算符)优先级问题
    常见错误16:for语句引发的理解障碍
    常见错误17:取大优先解析原则带来的问题
    常见错误18:声明饰词次序的小聪明
    常见错误19:“函数还是对象”的多义性
    常见错误20:效果漂移的类型量化饰词
    常见错误21:自反初始化
    常见错误22:静态连接类型和外部连接类型
    常见错误23:运算符函数名字查找的反常行为
    常见错误24:晦涩难懂的operato->

    第3章预处理器问题
    常见错误25:使用≠}denne定义的字面量
    常见错误26:使用#define定义的伪函数(函数宏)
    常见错误27:≠if的滥用
    常见错误28:断言(assert宏)的副作用

    第4章类型转换问题
    常见错误29:以void*为类型转换的中介类型
    常见错误30:截切问题
    常见错误31:对目标类型为指涉物为常量的指针类型的类型转换的认识误区
    常见错误32:对以指涉物为指向常量的指针类型的
    类型为目标类型的类型转换的认识误区
    常见错误33:对以指涉物为指向基类类型的指针类型的
    类型为目标类型的类型转换的认识误区
    常见错误34:指向多维数组的指针带来的问题
    常见错误35:未经校验的向下转型
    常见错误36:类型转换运算符的误用
    常见错误37:始料未及的构造函数类型转换
    常见错误38:在多继承条件下进行强制类型转换
    常见错误39:对非完整类型做强制类型转换
    常见错误40:旧式强制类型转换
    常见错误41:静态强制类型转换
    常见错误42:形式参数引发临时对象生成的初始化
    常见错误43:临时对象的生存期
    常见错误44:引用和临时对象
    常见错误45:(动态强制类型转换运算符)dynamic-cast带来的多义性解析失败
    常见错误46:对逆变性的误解

    第5章初始化问题
    常见错误47:赋值与初始化混淆
    常见错误48:位于非适当作用域的变量
    常见错误49:未能意识到C++语言中复制操作的固守行为
    常见错误50:按位复制的class对象
    常见错误5l:未能区分构造函数中的初始化和赋值
    常见错误52:未能在成员初始化列表中保持次序一致性
    常见错误53:对于虚基类(子对象)进行默认初始化
    常见错误54:复制构造函数对基类子对象初始化的未预期行为
    常见错误55:运行期静态初始化次序
    常见错误56:直接与复制初始化
    常见错误57:对参数的直接初始化
    常见错误58:无视返回值优化
    常见错误59.在构造函数申初始化静态(数据)成员

    第6章内存和资源管理问题
    常见错误60:未能区分纯量与数组的内存分配机制
    常见错误61:内存分配失败校验
    常见错误62:(用自定义版本)替换全局的内存管理运算符(所调用的函数)
    常见错误63:成员版本的operatornew和operatordelete的作用域和调用机制混淆
    常见错误64:抛出字符串字面常量(作为异常对象)
    常见错误65:未能正确理解和利用异常处理机制
    常见错误66:滥用局部量地址
    常见错误67:未能采用RAII(资源获取即初始化)习惯用法
    常见错误68:对autoptr的误用

    第7章多态问题
    常见错误69:类型特征码
    常见错误70:将基类析构函数声明为非虚函数
    常见错误71:对非虚(成员)函数的遮掩
    常见错误72:(以)过分灵活的(方式滥用)模板方法设计模式
    常见错误73:重载虚函数
    常见错误74:为参数指定默认初始化物的虚函数
    常见错误75:在构造函数和析构函数中调用虚函数
    常见错误76:虚赋值
    常见错误77:未能区分(函数的)重载、改写和遮掩
    常见错误78:未能深入理解虚函数和改写的实现机制
    常见错误79:支配原则议题

    第8章类型设计问题
    常见错误80:取/设状态接口
    常见错误81:常量和引用数据成员
    常见错误82:未能理解常量成员函数
    常见错误83:未能区分强聚合和弱聚合
    常见错误84:非适当的运算符重载
    常见错误85:(运算符)优先级和重载
    常见错误86:友元与成员运算符
    常见错误87:自增/自减运算符的问题
    常见错误88:对模板化的复制操作的认识误区

    第9章继承谱系设计问题
    常见错误89:持有class对象的数组
    常见错误90:非适当的容器类型之可替换性
    常见错误9l:未能理解protected访问层级
    常见错误92:为代码复用而以public方式继承
    常见错误93:以public方式继承抽象类
    常见错误94:未能运用继承谱系的退化形式
    常见错误95:继承的滥用
    常见错误96:依类型分派的控制结构
    常见错误97:单根谱系
    常见错误98:向class对象打探隐私
    常见错误99:权能查询问题
    中英文术语对照表
查看详情
相关图书 / 更多
C++语言99个常见编程错误:避免编码和设计中的常见问题
C++边做边学
冯玉芬;周树功;母景琴;詹胜
C++语言99个常见编程错误:避免编码和设计中的常见问题
C++程序设计基础教程 第2版
刘厚泉 李政伟 葛欣
C++语言99个常见编程错误:避免编码和设计中的常见问题
C++编程这样学
胡芳
C++语言99个常见编程错误:避免编码和设计中的常见问题
C++程序设计案例教程(线上线下混合版)
杨卫明;李晓虹
C++语言99个常见编程错误:避免编码和设计中的常见问题
C++之旅(第3版)
[美]Bjarne Stroustrup(本贾尼 斯特劳斯特鲁普
C++语言99个常见编程错误:避免编码和设计中的常见问题
C++20代码整洁之道:可持续软件开发模式实践(原书第2版)
[德]斯蒂芬·罗斯(Stephan Roth)
C++语言99个常见编程错误:避免编码和设计中的常见问题
C++ Core Guidelines解析
杨文波 译;[德]赖纳·格林(Rainer Grimm)著 吴咏炜;何荣华;张云潮
C++语言99个常见编程错误:避免编码和设计中的常见问题
C++程序设计(第4版)
周会平;徐建军;王挺
C++语言99个常见编程错误:避免编码和设计中的常见问题
C++开发案例精讲
杨国兴 著
C++语言99个常见编程错误:避免编码和设计中的常见问题
C++程序设计实践教程(新国标微课版)
马光志
C++语言99个常见编程错误:避免编码和设计中的常见问题
C++程序设计基础与实践
牛园园;韩洁琼;李晓芳;吴成宇
C++语言99个常见编程错误:避免编码和设计中的常见问题
C++程序设计基础教程
丁卫平 程学云 陈文兰 主编;任红建 沈晓红 文万志 副主编
您可能感兴趣 / 更多
C++语言99个常见编程错误:避免编码和设计中的常见问题
孩子,把你的手给我1:怎么说孩子才爱听,怎么教孩子才肯学?帮助每一位3-12岁孩子的父母结束与孩子的所有冲突!
[美]海姆·G.吉诺特
C++语言99个常见编程错误:避免编码和设计中的常见问题
怎样做成大事
[美]丹·加德纳(Dan Gardner) 著;贾拥民 译;湛庐文化 出品;[丹麦]傅以斌(Bent Flyvbjerg)
C++语言99个常见编程错误:避免编码和设计中的常见问题
1200年希腊罗马神话
[美]伊迪丝·汉密尔顿
C++语言99个常见编程错误:避免编码和设计中的常见问题
爱情心理学(新编本)
[美]罗伯特·J. 斯腾伯格 (美)凯琳·斯腾伯格 倪爱萍 译
C++语言99个常见编程错误:避免编码和设计中的常见问题
黄金圈法则
[美]西蒙·斯涅克 著;磨铁文化 出品
C++语言99个常见编程错误:避免编码和设计中的常见问题
汤姆·索亚历险记 彩图注音版 一二三四年级5-6-7-8-9岁小学生课外阅读经典 儿童文学无障碍有声伴读世界名著童话故事
[美]马克 吐温
C++语言99个常见编程错误:避免编码和设计中的常见问题
富兰克林自传 名家全译本 改变无数人命运的励志传奇 埃隆马斯克反复推荐 赠富兰克林签名照及精美插图
[美]本杰明·富兰克林 著;李自修 译
C++语言99个常见编程错误:避免编码和设计中的常见问题
意大利文艺复兴新艺术史
[美]迈克尔·韦恩·科尔 著;[美]斯蒂芬·J·坎贝尔;邵亦杨
C++语言99个常见编程错误:避免编码和设计中的常见问题
汤姆素亚历险记:中小学生课外阅读快乐读书吧 儿童文学无障碍有声伴读世界名著童话故事
[美]马克·吐温
C++语言99个常见编程错误:避免编码和设计中的常见问题
老人与海 彩图注音版 一二三四年级5-6-7-8-9岁小学生课外阅读经典 儿童文学无障碍有声伴读世界名著童话故事
[美]海明威
C++语言99个常见编程错误:避免编码和设计中的常见问题
养育的觉醒:全面激发孩子自驱力,教你如何心平气和做妈妈
[美]凯文·莱曼 著;唐晓璐 译;斯坦威 出品
C++语言99个常见编程错误:避免编码和设计中的常见问题
国际大奖图画书系列 共11册(小老鼠的恐惧的大书,大灰狼,红豆与菲比,别烦我,下雪了 ,穿靴子的猫 ,先有蛋,绿 ,特别快递,如果你想看鲸鱼 ,一个部落的孩子 ) 麦克米伦世纪
[美]莱恩·史密斯 (英)埃米莉·格雷维特 (美)劳拉·瓦卡罗·等/文 (英)埃米莉·格雷维特 等/图 彭懿 杨玲玲 阿甲 孙慧阳 白薇 译