暂无商品咨询信息 [发表商品咨询]
本书从《C++核心准则》(C++ Core Guideline)数百个条目中精心挑选了30条准则进行细致、深入的讲解。内容涵盖C++语言最主要的方面,如类型系统、面向对象、模板和元编程、错误处理、程序性能、常量性等,其间又恰如其分地穿插了编码风格、设计模式等主题。探讨的过程中处处可见来自作者数十年职业生涯的经验和示例,除了深入的洞察,行文中充满了趣味性。
作者试图通过这种突出重点、以点带面的方式帮助读者了解并学习C++核心准则,进而更深入地掌握C++这门编程语言,特别是它的“现代”形态。
第1章避重就轻不可取21
1.1P.2:使用ISOC++标准编写代码23
1.2F.51:有选择时优先使用默认参数而非重载33
1.3C.45:不要定义仅初始化数据成员的默认构造函数,而应使用类成员初始化43
1.4C.131:避免平凡的get和set函数51
1.5ES.10:每条语句只声明一个名字61
1.6NR.2:不强求函数只用一条return语句69
第2章不要伤害自己79
2.1P.11:将凌乱的结构封装起来,而不是使其散布于代码中81
2.2I.23:尽量减少函数参数91
2.3I.26:使用C风格子集获取跨编译器的ABI99
2.4C.47:按成员声明顺序定义并初始化成员变量107
2.5CP.3:尽量减少可写数据的显式共享117
2.6T.120:只在真正需要时使用模板元编程127
第3章别再使用139
3.1I.11:切勿通过原生指针(T*)或引用(T&)转移所有权141
3.2I.3:避免使用单例149
3.3C.90:依靠构造函数和赋值运算符,而不是memset和memcpy159
3.4ES.50:不要用强制转换去除const限定符169
3.5E.28:避免基于全局状态(如errno)的错误处理179
3.6SF.7:不要在头文件的全局作用域写usingnamespace189
第4章正确使用新特性199
4.1F.21:优先选择结构体或元组返回多个“输出”值201
4.2Enum.3:优先选择类枚举而不是“普通”枚举213
4.3ES.5:保持作用域小221
4.4Con.5:使用constexpr表示编译时可以计算的值233
4.5T.1:使用模板提高代码的抽象层次245
4.6T.10:为所有模板参数指定概念255
第5章默认写出好代码265
5.1P.4:理想情况下,程序应具有静态类型安全性267
5.2P.10:优先选择不可变数据而不是可变数据279
5.3I.30:封装违反规则的部分287
5.4ES.22:确定初始值后再声明变量295
5.5Per.7:为促成优化而设计305
5.6E.6:使用RAII防止泄露313
后记325
跋327
基本信息 | |
---|---|
出版社 | 电子工业出版社 |
ISBN | 9787121446009 |
条码 | 9787121446009 |
编者 | (美)J.盖伊·戴维森,(美)凯特·格雷戈里 |
译者 | |
出版年月 | 2024-05-01 00:00:00.0 |
开本 | 16开 |
装帧 | 平装 |
页数 | 328 |
字数 | 384000 |
版次 | 1 |
印次 | 1 |
纸张 |
暂无商品评论信息 [发表商品评论]
暂无商品咨询信息 [发表商品咨询]