程序设计教程:用C++语言编程(第3版) / 面向CS2013计算机专业规划教材
¥45.00定价
作者: 陈家骏、郑滔
出版时间:2015年6月
出版社:机械工业出版社
- 机械工业出版社
- 9787111501237
- 3版
- 66415
- 0044166582-5
- 压膜
- 16开
- 2015年6月
- 300
- 394
- 工学
- 软件工程
- TP312C
- 计算机
- 本科
内容简介
本书以C++为编程语言,介绍程序设计的基本思想、方法和技术,内容主要包括:计算机基础知识、基本数据类型、常量、变量、操作符、表达式、流程控制、结构化程序设计、过程抽象、递归函数、复杂数据类型(数组、结构等)、数据抽象、继承、类属类型(STL)、输入/输出、异常处理以及事件驱动和基于MFC“文档—视”结构的面向对象的Windows应用程序框架等。
目录
第3版前言
第2版前言
第1版前言
教学建议
第1章概述
1.1计算机的工作模型
1.1.1冯·诺依曼体系结构
1.1.2硬件与软件
1.1.3机内信息表示
1.2程序设计
1.2.1程序设计范式
1.2.2程序设计步骤
1.2.3程序设计语言
1.3C++语言
1.3.1概述
1.3.2C++程序的构成
1.3.3C++语言的词法
1.3.4C++程序的运行步骤
1.4小结
1.5习题
第2章简单数据的描述-基本数据类型和表达式
2.1概述
2.2基本数据类型
2.2.1整数类型
2.2.2实数类型
2.2.3字符类型
2.2.4逻辑类型
2.3数据的表现形式
2.3.1常量
2.3.2变量
2.3.3变量值的输入
2.4数据的基本运算-操作符
2.4.1操作符概述
2.4.2算术操作符
2.4.3关系与逻辑操作符
2.4.4位操作符
2.4.5赋值操作符
2.4.6其他操作符
2.4.7操作数的类型转换
2.5数据基本运算的实现-表达式
2.5.1表达式的构成与分类
2.5.2操作符的优先级和结合性
2.5.3表达式中操作数的类型转换
2.5.4带副作用操作符的表达式计算
2.5.5表达式结果的输出
2.6小结
2.7习题
第3章程序的流程控制(算法)描述-语句
3.1概述
3.2顺序执行
3.2.1表达式语句
3.2.2复合语句
3.2.3空语句
3.3选择执行
3.3.1if语句
3.3.2switch语句
3.4循环(重复)执行
3.4.1迭代与穷举
3.4.2while语句
3.4.3dowhile语句
3.4.4for语句
3.4.5计数循环和事件循环
3.4.6循环程序设计实例
3.5无条件转移
3.5.1goto语句
3.5.2break语句
3.5.3continue语句
3.6程序设计风格
3.6.1结构化程序设计
3.6.2关于goto语句
3.7小结
3.8习题
第4章过程抽象-函数
4.1概述
4.1.1功能分解与复合
4.1.2子程序及子程序间的数据传递
4.2C++函数
4.2.1函数的定义
4.2.2函数的调用
4.2.3值作为参数传递
4.2.4局部变量与全局变量
4.2.5基于函数的过程式程序设计
4.3标识符的作用域与变量的生存期
4.3.1程序的多模块结构
4.3.2标识符的作用域
4.3.3命名空间
4.3.4变量的生存期(存储分配)
*4.3.5基于栈的函数调用的实现
4.4递归函数
4.4.1什么是递归函数
4.4.2"分而治之"的程序设计
4.4.3递归与循环的选择
4.4.4递归函数应用实例
4.5标准函数库
4.6C++函数的进一步讨论
4.6.1内联函数
4.6.2带默认值的形式参数
4.6.3函数名重载
4.6.4匿名函数-λ表达式
4.7小结
4.8习题
第5章复合数据的描述-构造数据类型
5.1枚举类型-自定义值集的数据描述
5.1.1枚举类型的定义
5.1.2枚举类型的操作
5.2数组类型-由多个同类型元素构成的复合数据描述
5.2.1一维数组类型-线性复合数据的描述
5.2.2一维字符数组-字符串类型的一种实现
5.2.3二维数组类型-二维复合数据的描述
5.2.4数组类型的应用
5.3结构类型-由若干属性构成的复合数据描述
5.3.1结构类型的定义
5.3.2结构类型的操作
5.3.3结构类型的应用
5.4联合类型-用一种类型表示多种类型的数据
5.4.1联合类型的定义与操作
5.4.2联合类型的应用
5.5指针类型-内存地址的描述
5.5.1指针类型的定义
5.5.2指针类型的基本操作
5.5.3指针作为参数类型
5.5.4指针与动态变量
5.5.5指针与数组
5.5.6函数指针
*5.5.7多级指针
5.6引用类型-变量的别名
5.6.1引用类型的定义
5.6.2引用作为参数类型
5.7小结
5.8习题
第6章数据抽象-对象与类
6.1概述
6.1.1数据抽象与封装
6.1.2面向对象程序设计
*6.1.3面向对象程序设计与过程式程序设计的对比
6.2类
6.2.1数据成员
6.2.2成员函数
6.2.3成员的访问控制-信息隐藏
6.3对象
6.3.1对象的创建
6.3.2对象的操作
6.3.3this指针
6.4对象的初始化和消亡前处理
6.4.1构造函数
6.4.2析构函数
6.4.3成员对象的初始化
6.4.4拷贝构造函数
6.5类作为模块
6.5.1类模块的组成
*6.5.2Demeter法则
6.6对象与类的进一步讨论
6.6.1对常量对象的访问-常(const)成员函数
6.6.2同类对象之间的数据共享-静态(static)数据成员
6.6.3提高对象私有数据成员的访问效率-友元(friend)
6.6.4对象拷贝构造过程的优化-转移构造函数
6.6.5操作符重载
6.7小结
6.8习题
第7章继承(类的复用)-派生类
7.1概述
7.1.1类之间的继承关系-基类与派生类
7.1.2继承的作用
7.2单继承
7.2.1单继承派生类的定义
7.2.2在派生类中访问基类成员-protected访问控制
7.2.3派生类对基类成员的访问控制-继承方式
7.2.4派生类对象的初始化和赋值操作
7.2.5单继承的应用实例
7.2.6类之间的聚集关系
7.3消息(成员函数调用)的动态绑定
7.3.1消息的多态性
7.3.2虚函数与消息的动态绑定
7.3.3纯虚函数和抽象类
*7.3.4虚函数动态绑定的一种实现
7.4多继承
7.4.1多继承的必要性
7.4.2多继承派生类的定义
7.4.3命名冲突
7.4.4重复继承-虚基类
7.5小结
7.6习题
第8章类属类型(泛型)-模板
8.1概述
8.2模板
8.2.1函数模板
8.2.2类模板
8.2.3模板的复用
8.3C++标准模板库
8.3.1概述
8.3.2容器
8.3.3迭代器
8.3.4算法
8.4小结
8.5习题
第9章输入/输出
9.1概述
9.2面向控制台的输入/输出
9.2.1基于函数库的控制台I/O
9.2.2基于类库的控制台I/O
9.2.3抽取/插入操作符">>"和"<
9.3面向文件的输入/输出
9.3.1文件概述
9.3.2基于函数库的文件I/O
9.3.3基于类库的文件I/O
9.4面向字符串变量的输入/输出
9.5小结
9.6习题
第10章异常处理
10.1概述
10.1.1什么是异常
10.1.2异常处理的基本手段
10.2C++异常处理机制
10.2.1try、throw以及catch语句
10.2.2异常的嵌套处理
10.3基于断言的程序调试
10.4小结
10.5习题
第11章Windows应用程序设计
11.1Windows应用程序的基本结构
11.1.1Windows应用程序简介
11.1.2消息驱动的程序结构
11.2面向对象的Windows应用程序结构
11.2.1Windows应用程序中的对象
11.2.2微软基础类库(MFC)
11.2.3基于MFC"文档视"结构的应用框架
11.3小结
11.4习题
附录AASCII字符集及其编码
附录BIEEE浮点数的内部表示
附录CC++标准函数库中的常用函数
附录DC++编译预处理命令
附录EC++标准模板库(STL)常用功能
附录FMFC一些常用类的功能
参考文献