C++程序设计
1999-08
西安交通大学出版社
和克智
内容简介
C十十是80年代初出现的一种程序设计语言,它除了保持C语言的简洁高效等特点外,
还支持面向对象的程序设计。
本书共分15章和1个附录,全面、系统地介绍了C++语言的语言要素及C++程序设
计的方法与步骤。特别是在面向对象程序设计方面,书中通过逐步完成几个较大型的范例
程序,从应用的角度予以详细的介绍,以期读者能够迅速地掌握这一新型的程序设计方法。
本书是1995年7月出版的《C++程序设计》一书的第2版,是作者集多年教学、科
研和实际应用的心得体会而精心撰写而成的。书中许多内容是其它资料中没有提到而在实
用中又会经常遇到的。相信读者能够从本书中得到较大的收获。
本书可用作大专院校C十十语言课程的教材,计算机软件开发和应用人员的参考资料,
尤其适合自学C十十语言的读者使用。
目录
前言
第1章 绪论
1.1 C++语言的发展和特点
1.2 面向对象的程序设计
1.2.1 抽象和封装――对象
1.2.2 派生和继承
1.2.3 多态性
1.3 C++程序的结构
1.4 基本的输入和输出
1.5 C十十程序的开发步骤
习题
第2章 数据和表达式
2.1 C十十语言的词法符号
2.1.1 关键字
2.1.2 标识符
2.1.3 标点符号
2.1.4 分隔符
2.2 基本数据类型
2.3 常量
2.3.1 数值常量
2.3.2 字符常量
2.3.3 字符串常量
2.4 变量及其说明
2.5 基本运算符和表达式
2.5.1 基本运算符
2.5.2 表达式
2.6 赋值表达式和类型转换
2.6.1 赋值表达式
2.6.2 增量减量运算符
2.6.3 复合赋值运算符
2.6.4 表达式中的类型转换
2.6.5 强制类型转换
2.7 简单变量的初始化
2.7.1 变量的初始化
2.7.2 const和volatile修饰符
习题
第3章 程序控制语句
3.1 C+十语言的语句
3.1.1 C++语句的基本形式
3.1.2 块语句
3.2 选择语句
3.2.1 if语句
3.2.2 if语句的嵌套
3.2.3 三元条件表达式
3.2.4 switch语句
3.2.5 if语句和switch语句的比较
3.3 循环语句
3.3.1 while语句
3.3.2 do-while语句
3.3.3 for语句
3.3.4 三种循环语句的比较
3.3.5 循环的嵌套
3.4 循环的中断
3.4.1 break语句
3.4.2 continue语句
3.4.3 exit()函数和abort()函数
3.4.4 补充说明
3.5 got0语句与标号
习题
第4章 函数
4.1 函数
4.1.1 定义函数
4.1.2 函数的调用
4.2 函数间的数据传递
4.2.1 函数的参数和返回值
4.2.2 函数原型
4.2.3 函数的值调用
4.3 C+十的库函数
4.4 作用域和存储类
4.4.1 作用域
4.4.2 存储类
4.5 函数的递归调用
4.6 内联函数
4.7 带有缺省参数的函数
4.8 参数数目可变的函数
4.9 函数重载
4.10 编译预处理
4.10.1 嵌入指令
4.10.2 宏
4.10.3 条件编译指令
4.11 程序的多文件组织
4.11.1 连接属性
4.11.2 分割编译
习题
第5章 数组
5.1 数组
5.1.1 一维数组
5.1.2 多维数组
5.1.3 数组间的赋值
5.1.4 数组与函数
5.2 字符串
5.2.1 字符串的存储形式
5.2.2 字符串数组
5.2.3 字符串间的赋值
5.2.4 字符串与函数
5.3 字符串处理库函数
习题
第6章 指针和引用
6.1 指针
6.1.1 指针概念
6.1.2 指针的说明
6.1.3 对指针的访问
6.1.4 指针的运算
6.1.5 多级指针
6.2 指针与数组
6.2.1 用指针访问数组元素
6.2.2 指针与字符串
6.2.3 指针数组和数组指针
6.3 指针与函数
6.3.1 指针作为函数的参数
6.3.2 返回指针的函数
6.3.3 C+十语言中的main()函数
6.3.4 指向函数的指针
6.4 指针和动态内存分配
6.5 引用
6.5.1 引用的说明与使用
6.5.2 引用与函数
6.6 void和const型指针
6.6.1 void型指针
6.6.2 const型指针
习题
第7章 结构、联合和枚举
7.1 类型定义
7.2 结构
7.2.1 定义结构
7.2.2 说明结构变量
7.2.3 访问结构变量
7.2.4 结构变量成员
7.3 结构数组和结构指针
7.3.1 结构数组
7.3.2 结构指针
7.4 结构与函数
7.5 位域
7.6 联合
7.6.1 定义联合
7.6.2 联合的使用
7.7 枚举
7.7.1 枚举类型的定义及其变量的说明
7.7.2 枚举变量的使用
习题
第8章 类和对象
8.1 概述
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.5 this指针
习题
第9章 构造函数和析构函数
9.1 构造函数
9.1.1 定义构造函数
9.1.2 构造函数与对象初始化
9.1.3 构造函数和new运算符
9.1.4 缺省的构造函数
9.2 析构函数
9.2.1 定义析构函数
9.2.2 析构函数和delete运算符
9.2.3 缺省的析构函数
9.3 拷贝初始化构造函数
9.4 构造函数与对象成员
习题
第10章 继承和派生类
10.1 继承
10.1.1 单一继承
10.1.2 多重继承
10.2 初始化基类成员
10.3 二义性、支配规则和赋值兼容规则
10.3.1 二义性
10.3.2 支配规则
10.3.3 继承和对象成员
10.3.4 赋值兼容规则
10.4 虚基类
习题
第11章 类的其它特性
11.1 友元函数
11.1.1 友元函数的说明
11.1.2 使用友元函数
11.1.3 将成员函数用作友元
11.2 虚函数
11.2.1 虚函数
11.2.2 纯虚函数
11.3 静态成员
11.3.1 静态数据成员
11.3.2 静态成员函数
11.4 const,volatile对象和const,volatile成员函数
11.5 指向类成员的指针
习题
第12章 运算符重载
12.1 运算符重载
12.1.1 重载运算符
12.1.2 使用运算符重载
12.1.3 友元运算符
12.1.4 转换函数
12.1.5 赋值运算符重载
12.2 几个特殊运算符的重载
12.2.1 增量减量运算符
12.2.2 下标运算符
12.2.3 其它几个特殊运算符的重载
12.3 字符串类
12.3.1 定义字符串类
12.3.2 使用字符串类
习题
第13章 C++语言的I/O流类
13.1 概述
13.1.1 流
13.1.2 文件
13.1.3 缓冲
13.2 C++的基本流类体系
13.2.1 基本流类体系
13.2.2 预定义的流及流运算符
13.2.3 流的格式化I/O
13.2.4 流的错误处理
13.3 输入和输出
13.3.1 格式化输入
13.3.2 输入操作函数
13.3.3 格式化输出
13.3.4 输出操作函数
13.3.5 重载提取和插入运算符
习题
第14章 文件流和内存流
14.1 文件流
14.1.1 C++语言的文件流类体系
14.1.2 文件的打开与关闭
14.1.3 文件的访问
14.2 几个主要用于文件的函数
14.2.1 文件的读写函数
14.2.2 文件随机访问的函数
14.3 文本文件和二进制文件
14.3.1 文本文件
14.3.2 二进制文件
14.4 内存流
14.4.1 C++的内存流类体系
14.4.2 使用内存流
14.5 两个专门用于内存流的函数
习题
第15章 模板
15.1 函数模板
15.1.1 定义模板函数
15.1.2 使用模板函数
15.1.3 特例函数
15.2 类模板
15.2.1 定义模板类
15.2.2 使用模板类
习题
附录 ASCII码表
参考文献