标题：由浅入深学C++:基础、进阶与必做300题
图书信息
出版社: 电子工业出版社; 第1版 (2011年7月1日)
丛书名: 由浅入深学
平装: 580页
开本: 16
ISBN: 9787121133640
条形码: 9787121133640
尺寸: 29.4 x 19.8 x 3 cm
重量: 1.1 Kg
内容简介
C++是近年广泛使用的程序设计语言，由C语言的基础上发展而来，实现
了由面向过程到面向对象的转变，全面支持面向对象的程序设计方法。C++
语言在软件工业领域一直处于领先地位，并且自身在不断完善，必将作为高
性能软件开发的基础，在软件开发中发挥主要的作用。
由肖俊宇等编著的《由浅入深学C++--基础进阶与必做300题（附光盘）
》是C++语言的入门教程，较为系统地介绍了C++语言的基础内容。本书共分
为3篇22章，详细介绍了C++语言的基础知识、面向对象、标准模块、底层开
发和综合案例。本书循序渐进地讲述了C++的基础知识、C++程序的组成及其
开发过程、C++程序中的数据、表达式和语句、控制程序流程、数组与字符
串、指针与引用、使用函数、函数模板、错误和异常处理、宏和预编译、面
向对象的开发、封装、继承、多态、类模板、文件流、标准模板库STL和编
程实践等内容。
《由浅入深学C++--基础进阶与必做300题（附光盘）》涉及面广，从基
本知识到高级内容和核心概念，再到综合案例，几乎涉及C++开发的所有重
要知识。本书适台所有想全面学习C++开发技术的人员阅读，尤其适合没有
编程基础的C++语言初学者作为入门教程，也可作为大、中院校师生和培训
班的教材，对于C++语言开发爱好者，本书也有较大的参考价值。
目录
第1篇　C++基础篇
第1章　C++概述
1.1　引言
1.1.1　C++的历史沿革
1.1.2　入门C++
1.1.3　编程思想的转变
1.2　C++概述
1.2.1　C++的特征
1.2.2　C与C++的比较
1.2.3　C++的应用领域
1.3　C++源程序的组成
1.3.1　基本组成元素
1.3.2　标识符
1.3.3　保留字
1.3.4　符号
1.4　C++集成开发环境——DEV-C++
1.4.1　选择C++编译器
1.4.2　安装DEV-C++
1.4.3　DEV-C++ IDE简介
1.5　第一个C++程序——Hello　World
1.5.1　创建源程序
1.5.2　编译运行
1.6　小结
1.7　习题
第2章　变量与数据类型
2.1　常量和变量
2.1.1　常量
2.1.2　变量
2.1.3　变量的定义及赋值
2.1.4　变量的应用示例
2.2　基本数据类型
2.2.1　基本数据类型概述
2.2.2　整型数据类型
2.2.3　浮点型数据类型
2.2.4　字符型数据类型
2.2.5　布尔型数据类型
2.3　变量的作用域
2.4　类型转换
2.4.1　隐式转换
2.4.2　显式转换
2.5　小结
2.6　习题　3
第3章　表达式与语句
3.1　运算符
3.1.1　运算符概述
3.1.2　算术运算符
3.1.3　自增和自减运算符
3.1.4　赋值运算符
3.1.5　关系运算符
3.1.6　逻辑运算符
3.1.7　条件运算符
3.1.8　逗号运算符
3.1.9　位运算符
3.1.10　sizeof运算符
3.2　运算符的优先级和结合性
3.3　表达式
3.4　语句
3.4.1　空格的作用
3.4.2　语句块
3.4.3　赋值语句
3.4.4　空语句
3.5　小结
3.6　习题
第4章　流程控制结构之顺序结构
4.1　程序流程图
4.2　表达式语句
4.3　格式化输入/输出
4.3.1　标准输入流cin
4.3.2　标准输出流cout
4.3.3　输出流cerr和clog
4.4　格式控制函数
4.5　格式控制符
4.5.1　控制不同进制的输出
4.5.2　控制输出宽度
4.5.3　控制输出精度
4.6　顺序结构综合应用
4.7　小结
4.8　习题
第5章　流程控制结构之选择结构
5.1　条件
5.1.1　关系表达式条件
5.1.2　逻辑表达式条件
5.1.3　组合条件
5.2　if语句
5.2.1　if形式
5.2.2　if…else形式
5.2.3　if…else　if…else形式
5.2.4　if…else语句嵌套
5.3　switch语句
5.3.1　switch语句的基本形式
5.3.2　应用示例
5.4　选择结构的嵌套
5.5　选择结构综合应用
5.6　小结
5.7　习题
第6章　流程控制结构之循环结构
6.1　goto语句
6.2　while语句
6.2.1　while语句的基本形式
6.2.2　应用示例
6.2.3　注意事项
6.3　do…while语句
6.3.1　do…while语句的形式
6.3.2　应用示例
6.3.3　注意事项
6.4　for语句
6.4.1　for语句的形式
6.4.2　应用示例
6.4.3　注意事项
6.5　多重循环
6.6　转向语句
6.6.1　break语句
6.6.2　continue语句
6.6.3　return语句
6.7　循环结构综合应用
6.8　小结
6.9　习题
第7章　数组
7.1　数组概述
7.1.1　数组的基本概念
7.1.2　一维数组
7.1.3　二维数组
7.2　数组的声明及初始化
7.2.1　声明一维数组
7.2.2　初始化一维数组
7.2.3　声明二维数组
7.2.4　初始化二维数组
7.3　引用数组元素
7.3.1　引用一维数组元素
7.3.2　引用二维数组元素
7.3.3　应用示例
7.4　字符串
7.4.1　字符数组
7.4.2　字符串
7.4.3　字符数组与字符串的区别
7.5　字符串处理函数
7.5.1　strcmp()函数——字符串比较
7.5.2　strcpy()函数——字符串复制
7.5.3　strcat()函数——字符串连接
7.5.4　strlen()函数——计算字符串长度
7.5.5　gets()和puts()函数——字符串输入输出
7.6　数组综合应用
7.7　小结
7.8　习题
第8章　函数
8.1　函数概述
8.1.1　函数的基本概念
8.1.2　函数的分类
8.1.3　函数的组成
8.2　函数的声明和定义
8.2.1　声明函数
8.2.2　定义函数
8.2.3　头文件和实现文件的分离
8.3　函数参数传递
8.3.1　形参和实参
8.3.2　值传递
8.3.3　地址传递
8.4　函数的调用
8.4.1　函数调用过程
8.4.2　无参函数的调用
8.4.3　带参函数的调用
8.4.4　默认形参值的函数调用
8.4.5　嵌套调用
8.5　递归
8.5.1　直接递归
8.5.2　间接递归
8.6　main()函数
8.6.1　不带参数的main()函数
8.6.2　带参数的main()函数
8.7　内联函数
8.8　函数综合应用
8.9　小结
8.10　习题
第9章　函数的高级应用
9.1　数组作为函数参数
9.1.1　传递一维数组参数
9.1.2　传递多维数组参数
9.2　查找的函数实现
9.2.1　顺序查找的函数实现
9.2.2　折半查找的函数实现
9.3　排序的函数实现
9.3.1　冒泡排序的函数实现
9.3.2　快速排序的函数实现
9.4　函数模板
9.4.1　引入函数模板
9.4.2　定义函数模板
9.4.3　实例化函数模板
9.4.4　应用示例
9.5　函数重载
9.5.1　函数重载概述
9.5.2　参数类型不同的函数重载
9.5.3　参数个数不同的函数重载
9.5.4　应用示例
9.6　函数高级应用
9.7　小结
9.8　习题
第10章　指针与引用
10.1　指针概述
10.1.1　指针的基本概念
10.1.2　定义指针变量
10.1.3　初始化指针
10.2　指针的访问
10.2.1　指针的值
10.2.2　访问指针数据
10.2.3　应用示例
10.3　指针的算术运算
10.3.1　指针与整数的加减运算
10.3.2　指针加减1运算
10.3.3　指针的相减运算
10.3.4　应用示例
10.4　指针的关系运算
10.5　指向数组的指针
10.5.1　指针访问数组元素
10.5.2　指向一维数组
10.5.3　数组指针
10.5.4　指向多维数组
10.6　指向字符串的指针
10.6.1　定义字符串指针
10.6.2　应用示例
10.7　引用
10.7.1　引用的应用
10.7.2　引用与指针
10.8　指针数组
10.9　函数与指针
10.9.1　指针作为函数参数
10.9.2　指针函数
10.9.3　函数指针
10.10　动态内存分配
10.11　指向指针的指针
10.12　小结
10.13　习题
第11章　宏和预编译
11.1　预处理器和编译器
11.2　预处理器的任务
11.2.1　包含文件
11.2.2　搜索头文件
11.2.3　定义宏
11.3　宏的作用
11.3.1　替代字面常量
11.3.2　替代运算符
11.3.3　声明已定义符号
11.3.4　预定义的宏
11.4　带参数的宏
11.4.1　定义带参数的宏
11.4.2　注意宏展开的结果
11.4.3　带参数的宏与函数的异同
11.4.4　特殊的宏符号
11.5　宏指令和预定义宏
11.5.1　宏指令和预定义宏
11.5.2　利用预定义的宏指令进行条件编译
11.5.3　文件包含命令和包含警卫
11.6　综合实例
11.7　小结
11.8　习题
第12章　复合数据类型
12.1　定义结构体
12.1.1　结构体概述
12.1.2　定义结构体类型
12.1.3　声明结构体变量
12.2　结构体的应用
12.2.1　初始化结构体变量
12.2.2　引用结构体变量成员
12.2.3　结构体指针
12.2.4　结构体数组
12.3　联合
12.3.1　定义联合类型
12.3.2　声明联合变量
12.3.3　引用联合类型成员
12.4　枚举
12.4.1　定义枚举类型
12.4.2　声明枚举变量
12.4.3　引用枚举变量成员
12.5　用户自定义数据类型
12.6　复合数据类型综合应用
12.7　小结
12.8　习题
第2篇　面向对象编程篇
第13章　对象与类
13.1　对象与类概述
13.1.1　对象
13.1.2　对象分类
13.1.3　类
13.2　面向对象开发与面向过程开发的比较
13.2.1　面向过程开发
13.2.2　面向对象开发
13.3　类的特征
13.3.1　封装
13.3.2　继承
13.3.3　多态
13.4　从结构到类
13.5　类
13.5.1　类的声明
13.5.2　类的访问控制
13.5.3　类的定义
13.6　构造函数
13.6.1　构造函数的概念
13.6.2　构造函数的声明和定义
13.6.3　构造函数的调用
13.6.4　不带参数的构造函数
13.6.5　带有默认参数的构造函数
13.6.6　构造函数的重载
13.7　拷贝构造函数
13.7.1　自定义拷贝构造函数
13.7.2　调用拷贝构造函数
13.7.3　默认拷贝构造函数
13.8　析构函数
13.9　友元
13.9.1　友元函数
13.9.2　友元成员
13.9.3　友元类
13.10　类的static成员
13.10.1　定义static成员
13.10.2　使用static成员
13.11　小结
13.12　习题
第14章　继承
14.1　继承与派生
14.1.1　继承与派生概述
14.1.2　声明派生类
14.2　继承的访问控制
14.2.1　公有继承
14.2.2　私有继承
14.2.3　保护继承
14.3　派生类的构造函数和析构函数
14.3.1　执行顺序和构建原则
14.3.2　派生类构造函数的创建
14.3.3　派生类析构函数的构建
14.4　多重继承
14.4.1　二义性问题
14.4.2　多重继承
14.4.3　多重继承的构造函数和析构函数
14.5　虚基类
14.5.1　虚基类的引入
14.5.2　虚基类
14.5.3　虚基类的构造函数和初始化
14.6　小结
14.7　习题
第15章　多态
15.1　多态
15.1.1　多态的含义
15.1.2　多态的作用
15.1.3　多态的引入
15.2　函数重载
15.3　虚函数
15.3.1　定义虚函数
15.3.2　多级继承和虚函数
15.4　纯虚函数与抽象类
15.4.1　纯虚函数
15.4.2　抽象类
15.5　小结
15.6　习题
第16章　运算符重载
16.1　运算符重载简介
16.1.1　运算符重载的定义
16.1.2　运算符重载的特点
16.2　运算符重载形式
16.2.1　重载为类的成员函数
16.2.2　运算符重载为类的友元函数
16.2.3　运算符成员函数与友元运算符函数的比较
16.3　特殊运算符重载
16.3.1　“++”和“--”重载
16.3.2　赋值运算符“=”重载
16.3.3　下标运算符“[　]”重载
16.4　类类型转换
16.5　小结
16.6　习题
第17章　输入/输出流
17.1　输入/输出流的引入
17.1.1　C语言中输入/输出缺陷
17.1.2　输入/输出流简介
17.1.3　输入/输出流类层次
17.2　标准输入/输出流
17.2.1　标准输出流对象
17.2.2　标准输入流对象
17.3　输入/输出流成员函数
17.3.1　get()函数
17.3.2　getline()函数
17.3.3　put()函数
17.3.4　read()和write()函数
17.3.5　其他成员函数
17.4　输入/输出格式控制
17.4.1　用ios类的成员函数进行格式控制
17.4.2　使用格式控制符进行格式控制
17.5　用户自定义数据类型的输入/输出
17.5.1　重载输出运算符“<<”
17.5.2　重载输入运算符“>>”
17.6　综合实例
17.7　命名空间
17.7.1　命名空间概述
17.7.2　定义命名空间
17.7.3　使用命名空间
17.8　小结
17.9　习题
第18章　文件
18.1　文件概述
18.1.1　操作文件的过程
18.1.2　处理文件流的类
18.2　文件的打开与关闭
18.2.1　打开文件
18.2.2　关闭文件
18.3　文件的顺序读写
18.3.1　读写文本文件
18.3.2　文本文件应用示例
18.3.3　读写二进制文件
18.4　文件的随机读写
18.5　综合实例
18.6　小结
18.7　习题
第19章　类模板
19.1　什么是类模板
19.2　定义类模板
19.2.1　语法
19.2.2　非类型参数
19.2.3　模板参数的缺省实参
19.3　生成类模板的实例
19.3.1　类型参数的模板实例化
19.3.2　非类型参数的模板实例化
19.3.3　类模板范例
19.4　类模板的静态成员
19.5　类模板的友元
19.6　类模板的特化
19.6.1　类模板的全特化
19.6.2　偏特化
19.6.3　类模板的匹配规则
19.7　小结
19.8　习题
第20章　标准模板库STL
20.1　标准模板库概述
20.1.1　C++标准库
20.1.2　STL的形成
20.1.3　STL的组成
20.1.4　STL的引入
20.2　算法
20.3　容器
20.3.1　容器概述
20.3.2　向量
20.3.3　列表
20.3.4　集合
20.3.5　双端队列
20.3.6　栈
20.3.7　映射和多重映射
20.4　迭代器
20.5　综合练习
20.6　小结
20.7　习题
第21章　程序调试与异常处理
21.1　程序错误
21.1.1　编译错误
21.1.2　逻辑错误
21.1.3　运行错误
21.2　程序调试
21.2.1　DEV-C++的调试功能
21.2.2　调试程序示例
21.3　异常处理
21.3.1　基本思想
21.3.2　抛出异常
21.3.3　捕获异常
21.4　错误处理实例
21.5　异常处理实例
21.6　小结
21.7　习题
第3篇　综合案例篇
第22章　人事管理系统开发实例
22.1　需求分析
22.2　系统设计
22.2.1　概要设计
22.2.2　详细设计
22.2.3　数据结构设计
22.3　系统实现
22.3.1　创建应用程序
22.3.2　注册职工
22.3.3　更新职工信息
22.3.4　职工去职
22.3.5　查询职工信息
22.3.6　保存数据
22.3.7　工资排序
22.3.8　职工信息显示
22.4　系统集成
22.5　小结
22.6　习题