Foreword
Preface
Generic Programming and the C++ Standard Library
Item 1: Switching Streams
Item 2: Predicates, Part l: What remove() Removes
Item 3: Predicates, Part 2: Matters of State
Item 4: Extensible Templates: Via Inheritance or Traits?
Item 5: Typename
Item 6: Containers, Pointers, and Containers That Aren't
Item 7: Using Vector and Deque
Item 8: Using Set and Map
Item 9: Equivalent Code?
Item 10: Template Specialization and Overloading
Item 1 l: Mastermind
Optimization and Performance
Item 12: Inline
Item 13: Lazy Optimization, Part 1: A Plain Old String
Item 14: Lazy Optimization, Part 2: Introducing Laziness
Item 15: Lazy Optimization, Part 3: Iterators and References
Item 16: Lazy Optimization, Part 4: MuRithreaded Environments
Exception Safety Issues and Techniques
Item 17: Constructor Failures, Part 1: Object Lifetimes
Item 18: Constructor Failures, Part 2: Absorption?
Item 19: Uncaught Exceptions
Item 20: An Unmanaged Pointer Problem, Part 1: Parameter Evaluation
Item 21: An Unmanaged Pointer Problem, Part 2: What About auto_ptr?
Item 22: Exception-Safe Class Design, Part 1: Copy Assignment
Item 23: Exception-Safe Class Design, Part 2: Inheritance
Inheritance and Polymorphism
Item 24: Why Multiple Inheritance?
Item 25: Emulating Multiple Inheritance
Item 26: Multiple Inheritance and the Siamese Twin Problem
Item 27: (Im)pure Virtual Functions
Item 28: Controlled Polymorphism
Memory and Resource Management
Item 29: Using auto_otr
Item 30: Smart Pointer Members, Part l: A Problem with auto_ptr
Item 31: Smart Pointer Members, Part 2: Toward a ValuePtr
Free Functions and Macros
Item 32: Recursive Declarations
Item 33: Simulating Nested Functions
Item 34: Preprocessor Macros
Item 35: #Definition
Miscellaneous Topics
Item 36: Initialization
Item 37: Forward Declarations
Item 38: Typedef
Item 39: Namespaces, Part 1: Using-Declarations and Using-Directives
Item 40: Namespaces, Part 2: Migrating to Namespaces
Afterword
Appendix A: Optimizations That Aren't (in a Multithreaded World)
Appendix B: Test Results for Single-Threaded Versus Multithread-Safe
String Implementations
Bibliography
Index
本书以英文版的形式,介绍了MoreExceptionalC,通过40个问题帮助你理解关于C软件设计和开发成败的规则和问题。
《指尖上的会计》内容简介:学会计并不难,难的是“学得开心,用得顺手”。那么,面对那些晦涩难懂的会计术语以及财税处理工作,如
本书的构思和写作是在20世纪50年代后期,那一时期曾经被人们称为喷气机时代、清洁剂时代、第二次工业革命时期,等等。在那个阶段
《论语全解》内容简介:《论语》是记录孔子及其部分弟子言行的语录体文集,是儒家早期重要的经典著作,也是反映我国优秀传统文化的
《中国履行《禁止化学武器公约》报告(2015)》内容简介:本书力求全面反映中国禁化武履约工作情况,客观展示中国履约成就,记录履
《Python轻松学:爬虫、游戏与架站》内容简介:本书以Python 3.6为蓝本,以图文并茂的方式深入浅出地引导读者学习Python开发技术,
《轻松玩转Scratch 3.0编程(第2版)》内容简介:Scratch是可视化的编程语言,利用它可以制作游戏、动画,还可以计算数学题、处理字
本书简要介绍了Verilog硬件描述语言的基础知识,列举了大量实例,每个实例都经过精心选择,非常利于读者掌握Verilog硬件描述语言
如果你希望通过并发编程来充分发挥多核处理器的强大功能,那么本书将为你提供所需的理论知识和实际经验。《并发的艺术》是为数不
《你的保险指南》内容简介:如何基于自身身体状况挑选匹配的保险产品? •如何避免拒保拒赔? •如何为家庭成员量身定制保单? 作者结
《李白传》内容简介:本书是著名作家、文学史家李长之,写的一部关于诗仙李白的传记读物。书中包含《道教徒的诗人李白及其痛苦》《
《老老恒言》内容简介:《老老恒言》是一部汇集清以前各家养生思想,并结合作者自己的切身体会,总结编纂而成的老年养生专著,号称
《偶然中的必然:概率的故事》内容简介:本书故事的引人入胜与数学原理的巧妙结合,会产生一种奇特的反应,让读者在故事的流连忘返
《中国历史的教训:精装版》内容简介:本书是一本以人物故事为主线、以廉政思想为内核的中国历史通俗读物,也是一本由纪检监察干部
Thisremarkablebookpresentsarichandup–to–dateviewofevolutionthatexploresthefar–re...
《忽有山河大地:龚贤笔下的“荒原”》内容简介:本系列作品,通过对元代以来十六位画家的观照,来看文人画对生命“真性”追踪的内
DiveintogamedevelopmentandcreategreatmultiplayeronlinegameswithProAndroidWebGame...
《互联网+幼儿园管理》内容简介:本书通俗讲解互联网的基本概念,阐述移动互联网、云计算、智能设备的重要特征,便于读者快速了解互
《Photoshop修片,超简单!》内容简介:这是一本学习起来“超简单”的修片实用教程。本书以案例为主导,以新颖的写作形式介绍了包括
《超越谷歌:全球网脑新商机》主要内容简介:全球金融危机人人关注。金融危机证明了亚当•斯密提出的“看不见的手”已经失灵,人类
InDesign CC实战从入门到精通-(全彩版) 本书特色 InDesign是当今流行的专业排版软件,被广泛应用于平面设计、印刷出版、数字媒体等诸多领域。本书...