见善如不及,见不善如探汤。
--《论语》
:

Accelerated C++中文版通过示例进行编程实践

Accelerated C++中文版通过示例进行编程实践

作者: (美)Andrew Koenig,Bar

出版社: 科学出版社

出版时间: 2012-7

价格: 69.00元

ISBN: 9787030341877

扫码右侧二维码

作者简介:

"Andrew Koenig和Barbara E. Moo堪称C++研究领域的“第一神仙眷侣”,他们不光有着多年的C++开发、研究和教学经验,而且亲身参与了C++的演化和变革,是对C++的变化和发展起到重要影响的人。 Andrew Koenig,AT&T大规模程序研发部(前贝尔实验室)成员,同时也是C++标准委员会项目编辑。他有30多年编程经验,15年C++开发经验,已发表150多篇与C++有关的论文,应邀在世界各地多次演讲。曾编著C Traps and Pitfalls一书,并与妻子合著Ruminations on C++。 Barbara E. Moo,独立咨询顾问,在软件领域从业20多年。在AT&T工作的近15年中,参与了第一个使用C++编写商业产品的开发项目,负责管理公司第一个C++编译器项目,并成功指导开发了AT&T中屡获殊荣的WorldNet Internet Service Business。曾参与编写Ruminations on C++一书,并在世界各地进行过多次演讲。"

内容简介:

《Accelerated C++中文版通过示例进行编程实践》系统介绍C++程序设计,是美国斯坦福大学的经典教材。从使用C++标准库中的高级抽象开始,使读者很快掌握编程方法。每一章都有很经典独特的例子以及非常到位的讲解,覆盖了C++更多领域的内容,从标准库容器、泛型算法的使用,到类的设计、泛型算法的设计,《Accelerated C++中文版通过示例进行编程实践》都进行了详细的讲解。《Accelerated C++中文版通过示例进行编程实践》作者(克尼格)有丰富的C++开发、研究和教学经验,内容由浅入深,讲解精炼巧妙。无论是刚入门的新手还是有经验的C++开发人员都能从《Accelerated C++中文版通过示例进行编程实践》中受益。

目录:

"第0章 开始1 0.1 注释1 0.2 #include指令2 0.3 主函数main2 0.4 花括号2 0.5 使用标准库进行输出3 0.6 返回语句3 0.7 进一步的深入4 0.8 小结5 练习7 第1章 字符串的使用8 1.1 输入8 1.2 将姓名装框10 1.3 小结13 练习15 第2章 循环与计数17 2.1 问题17 2.2 程序的整体结构18 2.3 输出数目未知的行18 2.3.1 while语句19 2.3.2 设计while语句20 2.4 输出一行22 2.4.1 输出边界字符23 2.4.2 输出非边界字符25 2.5 完整的框架程序26 2.5.1 略去重复使用的std::27 2.5.2 使用for语句缩短程序27 2.5.3 压缩检测28 2.5.4 完整的框架程序29 2.6 计数30 2.7 小结31 练习34 第3章 使用批量数据36 3.1 计算学生成绩36 3.1.1 检测输入40 3.1.2 循环不变式41 3.2 用中值代替平均值42 3.2.1 将数据集合存储到向量中42 3.2.2 产生输出44 3.2.3 更加深入的观察49 3.3 小结50 练习51 第4章 组织程序和数据52 4.1 组织计算52 4.1.1 查找中值54 4.1.2 重新制定计算成绩的策略55 4.1.3 读家庭作业成绩56 4.1.4 三种函数参数59 4.1.5 使用函数来计算学生的成绩60 4.2 组织数据62 4.2.1 将一个学生的所有数据放置在一起63 4.2.2 处理学生记录63 4.2.3 生成报表65 4.3 将各部分代码连接到一起67 4.4 将计算成绩的程序分块69 4.5 修正后的计算成绩程序71 4.6 小结73 练习74 第5章 使用顺序容器和分析字符串76 5.1 将学生进行分类76 5.1.1 就地删除元素77 5.1.2 顺序存取和随机存取80 5.2 迭代器80 5.2.1 迭代器的类型81 5.2.2 迭代器的操作82 5.2.3 一些语法知识83 5.2.4 students.erase(students.begin()+i)的含义83 5.3 用迭代器代替索引83 5.4 重新思考数据结构以实现更好的性能85 5.5 list类型86 5.5.1 一些重要的差别87 5.5.2 一个恼人的话题88 5.6 分割字符串88 5.7 测试split函数91 5.8 连接字符串93 5.8.1 将图案装框93 5.8.2 纵向连接95 5.8.3 横向连接95 5.9 小结97 练习100 第6章 使用库算法103 6.1 分析字符串103 6.1.1 实现split的另一种方法105 6.1.2 回文107 6.1.3 查找URL107 6.2 比较计算成绩的方案112 6.2.1 处理学生记录112 6.2.2 分析成绩113 6.2.3 计算基于家庭作业平均成绩的总成绩117 6.2.4 上交的家庭作业的中值118 6.3 对学生进行分类并回顾我们的问题119 6.3.1 一种两次传递的解决方案119 6.3.2 一种一次传递的解决方案121 6.4 算法、容器以及迭代器122 6.5 小结123 练习124 第7章 使用关联容器126 7.1 支持高效查找的容器126 7.2 计算单词数量127 7.3 生成交叉引用表129 7.4 生成语句132 7.4.1 呈现规则134 7.4.2 读入文法134 7.4.3 生成语句135 7.4.4 选择随机元素138 7.5 关于性能的一些说明140 7.6 小结140 练习141 第8章 编写泛型函数143 8.1 什么是泛型函数143 8.1.1 未知类型的中值144 8.1.2 模板实例化146 8.1.3 泛型函数和类型146 8.2 数据结构独立性147 8.2.1 算法与迭代器148 8.2.2 顺序只读访问149 8.2.3 顺序只写访问150 8.2.4 顺序读-写访问151 8.2.5 可逆访问152 8.2.6 随机访问152 8.2.7 迭代器区间和越界值153 8.3 输入和输出迭代器155 8.4 使用迭代器提高适应性156 8.5 小结157 练习158 第9章 定义新类型160 9.1 Student_info回顾160 9.2 自定义类型161 9.2.1 成员函数162 9.2.2 非成员函数164 9.3 保护164 9.3.1 存取器函数166 9.3.2 检查对象是否为空167 9.4 Student_info类168 9.5 构造函数168 9.5.1 默认构造函数170 9.5.2 带参数的构造函数171 9.6 使用Student_info类171 9.7 小结172 练习173 第10章 管理内存与低级数据结构175 10.1 指针与数组175 10.1.1 指针176 10.1.2 指向函数的指针177 10.1.3 数组180 10.1.4 指针算法180 10.1.5 索引181 10.1.6 数组初始化182 10.2 字符串字面量回顾182 10.3 初始化字符串指针数组183 10.4 main函数的参数185 10.5 文件读写186 10.5.1 标准错误流186 10.5.2 处理多个输入/输出文件186 10.6 内存管理的三种方法188 10.6.1 为对象分配/释放内存189 10.6.2 为数组分配/释放内存190 10.7 小结191 练习192 第11章 定义抽象数据类型193 11.1 Vec类193 11.2 实现Vec类194 11.2.1 内存分配195 11.2.2 构造函数196 11.2.3 类型定义197 11.2.4 索引与大小198 11.2.5 返回迭代器的操作200 11.3 复制控制201 11.3.1 复制构造函数201 11.3.2 赋值运算符202 11.3.3 赋值不是初始化205 11.3.4 析构函数206 11.3.5 默认操作207 11.3.6 三位一体规则207 11.4 动态的Vec类型对象208 11.5 灵活的内存管理210 11.6 小结216 练习216 第12章 使类对象获得数值功能218 12.1 一个简单的string类219 12.2 自动转换220 12.3 Str操作221 12.3.1 输入和输出运算符222 12.3.2 友元函数223 12.3.3 其他二元运算符225 12.3.4 混合类型表达式227 12.3.5 设计二元运算符228 12.4 有些转换是危险的228 12.5 类型转换操作函数229 12.6 类型转换与内存管理231 12.7 小结232 练习233 第13章 继承与动态绑定的使用235 13.1 继承235 13.1.1 回顾保护类型237 13.1.2 操作函数237 13.1.3 继承与构造函数239 13.2 多态与虚拟函数240 13.2.1 在不确定对象类型时获得对象的值242 13.2.2 动态绑定243 13.2.3 简单回顾244 13.3 使用继承解决问题245 13.3.1 实际类型待定的容器248 13.3.2 虚拟析构函数250 13.4 一个简单的句柄类251 13.4.1 读取句柄253 13.4.2 复制句柄对象254 13.5 使用句柄类256 13.6 微妙之处257 13.6.1 继承与容器257 13.6.2 需要哪个函数258 13.7 小结259 练习260 第14章 近乎自动地管理内存262 14.1 用于复制对象的句柄263 14.1.1 通用句柄类263 14.1.2 使用通用句柄266 14.2 引用计数句柄269 14.3 可以让您决定何时共享数据的句柄272 14.4 可控句柄的一个改进274 14.4.1 复制我们无法控制的类型275 14.4.2 复制在何时才是必要的277 14.5 小结277 练习278 第15章 再探字符图形279 15.1 设计279 15.1.1 使用继承来模拟结构280 15.1.2 Pic_base类282 15.1.3 派生类284 15.1.4 复制控制287 15.2 实现288 15.2.1 实现用户接口288 15.2.2 String_Pic类291 15.2.3 补齐输出结果292 15.2.4 VCat_Pic类293 15.2.5 HCat_Pic类294 15.2.6 Frame_Pic类295 15.2.7 不要忘记友元类声明296 15.3 小结298 练习299 第16章 学习C++的后续方法301 16.1 利用已经掌握的知识301 16.2 学习更多的知识303 练习304 附录A C++语法细节305 A.1 声明305 A.1.1 指定说明307 A.1.2 声明符308 A.2 类型310 A.2.1 整数类型310 A.2.2 浮点类型313 A.2.3 常量表达式314 A.2.4 类型转换314 A.2.5 枚举类型315 A.2.6 重载316 A.3 表达式316 A.4 语句319 附录B 标准库一览322 B.1 输入-输出323 B.2 容器和迭代器325 B.2.1 共有的容器操作325 B.2.2 顺序容器的操作326 B.2.3 其他顺序操作327 B.2.4 关联容器的操作328 B.2.5 迭代器(iterator)328 B.2.6 向量(vector)330 B.2.7 链表(list)331 B.2.8 字符串(string)331 B.2.9 对(pair)332 B.2.10 图(map)333 B.3 算法333 "

相关推荐

追问
2024-12-22 9.1k
长安的荔枝
2024-12-22 4.5k

评论

2024-06-20 21:57:20
书虫漫步发表
这是一本适合C++初学者和有经验的开发者学习的好书。它循序渐进地介绍了C++的概念和技术,从基本语法到高级特性,非常全面。作者深入浅出的讲解和丰富的示例让我受益匪浅,大大提升了我的C++编程能力。
2024-06-20 21:57:20
程序媛小姐姐发表
作为一名资深的C++程序员,我认为《Accelerated C++中文版通过示例进行编程实践》是一本编写精良的教程。它从实用程序设计角度入手,通过大量生动形象的示例,帮助读者掌握C++的精髓。书中的内容涵盖了C++的方方面面,从基本语法到复杂设计模式,非常适合作为C++学习或进阶的参考书。
2024-06-20 21:57:20
代码乌托邦发表
这是一本让我大开眼界的书!作者采用“示例驱动”的教学方法,通过一个个真实的编程案例,将C++的复杂概念变得清晰易懂。特别是对C++标准库和泛型的深入讲解,让我印象深刻。本书不仅适合初学者,也推荐给想要提升C++编程技巧的开发者。
2024-06-20 21:57:20
程序侠客发表
作为一名资深C++开发者,我强烈推荐《Accelerated C++中文版通过示例进行编程实践》给初学者和有经验的程序员。书中清晰易懂的讲解、丰富的示例和循序渐进的学习方式,让我受益匪浅。它不仅帮助我巩固了C++的基础知识,还让我学会了高级的编程技巧和设计思想。
2024-06-20 21:57:20
码农笔记发表
《Accelerated C++中文版通过示例进行编程实践》是一本内容全面、讲解深入的C++教程。作者从实践出发,通过大量的示例和练习,让读者在实战中掌握C++的精髓。书中的内容深入浅出,涵盖了C++的各个方面,非常适合作为C++学习或进阶的教材。
登录发表评论