书籍详情

C++程序设计:现代方法

C++程序设计:现代方法

作者:F. Alexander Allain 著; 李松峰,程芃 编; 赵守彬,陈园军,马兴旺 译

出版社:人民邮电出版社

出版时间:2014-08-01

ISBN:9787115357007

定价:¥69.00

购买这本书可以去
内容简介
  《C++程序设计:现代方法》不是一本百科全书式的C++教程,更不是一本写给有编程经验的人看的C++书。如果你想学C++,但没有太多编程经验,而且十分发愁去看那些厚得要命,大部分内容不知所云,更不知道何年何月才用得上的C++“砖头书”,别着急,就看这本吧!《C++程序设计:现代方法》篇幅适中,写得又简单通俗,涵盖了C++编程的所有重要概念。另外,我们得提一提本书作者Alexander Allain,他是月访问量超百万的著名C\C++教程站Cprogramming.com的创建者,拥有在哈佛大学讲授C++编程的一线教学经验。本书就是他结合多年教学心得和大量读者反馈,为普通C++初学者登堂入室特意编写的一本全新教程,可以帮助你迅速成长为一名优秀的、受欢迎的C++程序员。作者真正了解每一位C++编程学习者的需求,了解初学者起步阶段的困惑和纠结。因此,本书由浅入深、循序渐进、步步为营,讲述了编程过程的每一个环节,揭示了编程之路中可能遇到的各种“坑”。以下内容是本书特有的教学思想和方法的体现。从编程所需的工具开始讲起,耐心教你怎么使用清晰解释变量、循环、函数等最基本的编程概念手把手示范怎么把头脑中的想法转换成C++代码C++的指针不好理解,但本书会给你最清晰明白的解释字符串、文件I/O、数字、引用……纷至沓来C++中的类,以及类的设计面向C++的特有编程模式使用C++进行面向对象编程数据结构和标准模板库(STL)习题和75个课后练习巩固你对重要概念和知识点的理解
作者简介
  作者简介:F. Alexander Allain,知名云存储创业公司Dropbox软件工程师、资深C++程序员,在哈佛大学工程与应用科学学院有多年一线教学经验(重点围绕C、C++、Scheme讲授计算机科学基础课程)。另外,他还是知名编程网站Cprogramming.com的创建者与维护者,上面关于C和C++的教程帮助了全球数百万的程序员。译者简介:赵守彬,2011年毕业于河北理工大学网络工程专业,后从事Android平台游戏和应用开发,擅长C/C++、Java等,目前从事基于cocos2d-x的手游开发。陈园军,毕业于南京大学计算机系,硕士学历,微博账号“NJU陈小坏”。主要从事嵌入式系统研究,有多年的C++开发经验,关注开源社区和云计算等领域,对新技术有强烈的探索欲。他常年混迹于字幕翻译论坛,常读书,闲书、技术皆可,不求甚解,只贪欢愉,最大的爱好非科幻莫属。马兴旺,湖南大学毕业,中国计算机学会YOCSEF委员,证通电子股份有限公司高级工程师,从事支付安全工作。
目录
第一部分 进入C++的世界
第1章 简介和环境搭建
1.1  什么是编程语言
1.2  C和C++之间的不同之处
1.3  学习C++之前,是否需要先了解C
1.4  成为程序员,是否需要懂数学
1.5  术语
1.5.1  编程
1.5.2  可执行文件
1.6  编辑和编译源文件
1.7  关于示例源代码
1.8  Windows
1.8.1  第1步:下载Code::Blocks
1.8.2  第2步:安装Code::Blocks
1.8.3  第3步:运行Code::Blocks
1.8.4  错误调试
1.8.5  使用Code::Blocks的原因
1.9  Macintosh
1.9.1  Xcode
1.9.2  安装Xcode 5
1.9.3  运行Xcode
1.9.4  用Xcode创建第一个C++
程序
1.9.5  安装Xcode 6 beta
1.9.6  运行Xcode
1.9.7  用Xcode创建第一个C++
程序
1.9.8  错误调试
1.10  Linux
1.10.1  步骤1:安装g++
1.10.2  步骤2:运行g++
1.10.3  步骤3:运行你的程序
1.10.4  步骤4:安装文本编辑器
1.10.5  配置nano
1.10.6  使用nano
第2章 C++基础
2.1  C++简介
2.1.1  最简单的C++程序
2.1.2  程序无法运行的原因
2.1.3  C++程序的基本结构
2.2  为程序添加注释
2.3  像程序员一样思考,创建可复用的
代码
2.4  痛并快乐着的练习
2.5  问答题
2.6  实践题
第3章 用户交互和变量
3.1  变量
3.1.1  C++中的变量声明
3.1.2  使用变量
3.1.3  程序闪退的处理方法
3.1.4  修改、使用和比较变量
3.1.5  加减1的简写
3.2  变量的使用和滥用
3.2.1  C++中声明变量的常见错误
3.2.2  区分大小写
3.2.3  变量命名
3.3  字符串存储
3.4  基本类型的存储解析
3.5  问答题
3.6  实践题
第4章 if语句
4.1  if的基础语法
4.2  表达式
4.2.1  truth
4.2.2  布尔型
4.3  else语句
4.4  else-if
4.5  字符串比较
4.6  逻辑运算符在条件语句上的有趣应用
4.6.1  逻辑非
4.6.2  逻辑与
4.6.3  逻辑或
4.6.4  综合表达式
4.6.5  逻辑表达式示例
4.7  问答题
4.8  实践题
第5章 循环
5.1  while循环
5.2  for循环
5.2.1  变量初始化
5.2.2  循环条件
5.2.3  变量更新
5.3  do-while循环
5.4  控制循环
5.5  嵌套循环
5.6  选择合适的循环
5.6.1  for循环
5.6.2  while循环
5.6.3  do-while循环
5.7  问答题
5.8  实践题
第6章 函数
6.1  函数语法
6.2  局部变量和全局变量
6.2.1  局部变量
6.2.2  全局变量
6.2.3  有关全局变量的警告
6.3  使函数对调用有效
6.3.1  函数定义和声明
6.3.2  函数原型的应用示例
6.4  把程序拆分成函数
6.4.1  当需要重复代码时
6.4.2  使代码更加易读
6.5  命名和重载函数
6.6  函数概述
6.7  问答题
6.8  实践题
第7章 如何解决问题
7.1  只需判断数被除时有无余数
7.2  效率和安全的简单说明
7.3  不知道算法的情况下的解决方案
7.4  实践题
第8章 switch-case和枚举
8.1  比较switch-case和if-else
8.2  使用枚举创建简单类型
8.3  问答题
8.4  实践题
第9章 随机
9.1  获得随机数
9.2  bug和随机数
9.3  问答题
9.4  实践题
第二部分 数据处理
第10章 数组
10.1  数组的基础语法
10.2  数组使用示例
10.2.1  使用数组存储排序
10.2.2  用多维数组表示网格
10.3  使用数组
10.3.1  数组和for循环
10.3.2  将数组传递给函数
10.3.3  注销数组的末尾
10.4  数组排序
10.5  问答题
10.6  实践题
第11章 结构体
11.1  关联多个值
11.1.1  语法
11.1.2  传递结构体变量
11.2  问答题
11.3  实践题
第12章 指针简介
12.1  忘记之前对指针的认知
12.2  指针的概念以及关注指针的原因
12.3  内存的概念
12.3.1  变量与地址
12.3.2  内存布局
12.4  指针的其他优点(和缺点)
12.5  问答题
12.6  实践题
第13章 使用指针
13.1  指针的语法
13.2  指针的指向:变量的地址
13.3  未初始化指针与空指针
13.4  指针和函数
13.5  引用
13.6  问答题
13.7  实践题
第14章 动态内存分配
14.1  获得更多的新内存
14.1.1  运行内存不足
14.1.2  引用和动态分配
14.2  指针和数组
14.3  多维数组
14.4  指针运算
14.4.1  理解二维数组
14.4.2  指向指针的指针
14.4.3  指向指针的指针与二维数组
14.5  盘点指针
14.6  问答题
14.7  实践题
第15章 数据结构简介与链表
15.1  指针和结构体
15.2  创建一个链表
15.2.1  第一轮
15.2.2  第二轮
15.3  遍历链表
15.4  盘点链表
15.5  问答题
15.6  实践题
第16章 递归
16.1  如何看待递归
16.2  递归和数据结构
16.3  循环和递归
16.4  栈
16.4.1  栈的力量
16.4.2  递归的缺点
16.4.3  调试栈溢出
16.4.4  性能
16.5  盘点递归
16.6  问答题
16.7  实践题
第17章 二叉树
17.1  在现实世界中使用二叉树
17.2  问答题
17.3  实践题
第18章 标准模板库
18.1  vector,大小可变的数组
18.1.1  vector的方法调用
18.1.2  vector的其他功能
18.2  map
18.3  迭代器
18.4  盘点STL
18.5  进一步学习STL
18.6  问答题
18.7  实践题
第19章 更多关于字符串的内容
19.1  读入字符串
19.2  字符串长度和访问单个元素
19.3  字符串搜索与子字符串
19.4  通过引用传递
19.4.1  const传播
19.4.2  const和STL
19.5  问答题
19.6  实践题
第20章 使用Code::Blocks进行调试
20.1  踏上调试之旅
20.2  设置断点
20.2.1  调试崩溃问题
20.2.2  强行进入一个"悬停"程序
20.2.3  修改变量
20.2.4  总结
20.3  实践题
20.3.1  问题1:指数问题
20.3.2  问题2:相加问题
20.3.3  问题3:斐波那契程序的bug
20.3.4  问题4:列表的错误读取和错误输出
第三部分 编写大规模程序
第21章 将程序分解
21.1  理解C++的构建过程
21.1.1  预处理
21.1.2  编译
21.1.3  链接
21.1.4  把编译和链接分开的原因
21.2  如何把程序分开到不同的文件中
21.2.1  第一步:将声明和定义分开
21.2.2  第二步:找出哪些函数需要共享出去
21.2.3  第三步:把共用的函数移到新的文件中
21.2.4  看一个完整的例子
21.2.5  关于头文件其他要注意的地方
21.2.6  在开发环境中处理多个源文件
21.3  问答题
21.4  实践题
第22章 程序设计方法介绍
猜您喜欢

读书导航