欢迎光临武汉大学出版社!
图书详情首页 > 图书中心
C++高级进阶教程
作者:陈刚 版次:1-1 开本:16 页数:424 千字数: 装帧方式:平装
ISBN 978-7-307-06563-5 出版时间:2008-10-03 印刷时间:2008-10-05 定价:¥38元 浏览量: 购买图书
本书在假定读者有一定的C++编程能力的基础上,进一步加强了对一些基本概念的解释,介绍了一些不太常用的关键词的用法。同时,介绍了一些C++语言机制的底层实现方案,如引用是怎样实现的、对象上的实例成员函数是怎样被调用的、虚函数表是如何存储以及如何被访问的,new和delete的实现过程是怎样的等等。另外,还进一步加深了对一些常用C++语言机制的讲解,如sizeof的用法、typedef的用法、命名空间的定义和使用、多维数组和多重指针、各种操作符的重载等,同时也对一些高级话题,如怎样调试程序、为什么需要模式设计、怎样应对C++语言的复杂性进行了探讨。
希望通过这些内容的学习,使读者能在微观和宏观两个方面进一步拓展对C++语言的认识,从而能更好地利用它们进行程序开发。
本书可作为高年级本科生、研究生的程序设计语言教材,也可供相关工程技术人员参考。
C++高级进阶教程目录

第一章:C++基础知识
1.1关于C++标准
1.2文字常量和常变量
1.3const的用法
1.4const-cast的用法
1.5mutable的用法
1.6求余运算符
1.7sizef的用法
1.8引用和指针常量
1.9左值的概念
1.10关于goto语句
1.11volatile的用法
1.12typedef的用法
1.13关于字符串
1.14什么是链式操作
1.15关于名字空间
1.16怎样定义复杂的宏
1.17explicit的用法
第二章:数据类型与程序结构
2.1C++的数据类型
2.2C++中的布尔类型
2.3void的用法
2.4枚举类型的定义和使用
2.5结构与联合体
2.6数据类型转换
2.7声明与定义的区别
2.8关于初始化
2.9作用域和生命期
2.11什么是分离式编译模式
第三章:函数
3.1关于main()函数
3.2函数的参数是如何传递的
3.3实现函数调用时堆栈的变化情况
3.4关于函数参数的默认值
3.5如何禁止传值调用
3.6定义和使用可变参数函数
3.7关于函数指针
3.8关于函数重载
3.9关于操作符重载
3.10类的成员函数与外部函数的区别
3.11关于内联函数
3.12函数的返回值放在哪里
3.13extern“C”的作用
第四章:类与对象
4.1类与对象概述
4.2类定义后面为什么一定要加分号
4.3关于初始化的列表
4.4对象的生成方式
4.5关于临时对象
4.6关于点的操作符
4.7嵌套类与局部类
4.8对象之间比较
4.9类的静态成员的定义和使用
4.10类的设计与实现规范
4.11抽象类与纯虚函数
4.12类对象的内存布局
4.13为什么说最好将基类的析构函数定义为虚函数
4.14对象数据成员的初始值
4.15对象产生和销毁的顺序
4.16关于拷贝构造函数
第五章:数组与指针
5.1数组名的定义
5.2什么是指针
5.3数组与指针的关系
5.4数组的初始化
5.5多维数组与多重指针
5.6成员数据指针
5.7关于this指针
5.8什么是悬挂指针
5.9什么是解引用
5.10指针与句柄
第六章:模板与标准模板库
6.1关于模板参数
6.2关于模板实例化
6.3函数声明对模板实例化的屏蔽
6.4将模板声明为友元
6.5模板与分离编译模式
6.6关于模板特化
6.7输入输出迭代子的用法
6.8bitset的简单用法
6.9typename的用法
6.10什么是仿函数
6.11什么是引用计数
6.12什么是ADL
第七章:内存管理
7.1程序的内存布局
7.2理解new操作的实现过程
7.3怎样禁止在堆上创建对象
7.4new和delete的使用规范
7.5delete和delete[]的区别
7.6什么是定位放置的new
7.7在函数中创建动态对象
7.8什么是内存池技术
第八章:继承与多态
8.1私有成员会被继承吗
8.2怎样理解构造函数不能被继承
8.3什么是虚拟继承
8.4怎样编写一个不能被继承的类
8.5关于隐藏
8.6什么是RTTI
8.7虚调用的集中具体情形
8.8不要在构造函数或析构函数中调用虚函数
8.9虚函数可以是私有的吗
8.10动态联编是怎样实现的
8.11!操作符重载
8.12[]操作符重载
8.13*操作符重载
8.14赋值操作符重载
8.15输入输出操作符重载
第九章:流类库输入输出
9.1什么是IO流
9.2IO流类库的优点
9.3endl是什么
9.4实现不带缓冲的输入
9.5提高输入输出操作的稳定性
9.6为什么要设定locate
9.7char*和wchar*之间的转换
9.8获取文件信息
9.9管理文件和目录的相关操作
9.10二进制文件的IO操作
第十章:异常处理
10.1C++为什么要引入异常处理机制
10.2抛出异常和传递参数的不同
10.3抛出和接受异常的顺序
10.4在构造函中抛出异常
10.5用传引用的方式捕捉异常
10.6在堆栈展开时如何防止内存泄漏
第十一章:程序开发环境与实践
11.1关于开发环境
11.2在IDE中调试程序时查看输出结果
11.3使用汇编语言
11.4怎样调试C++程序
11.5关于编码规范
11.6正确使用注释
11.7静态库和动态库
第十二章:编程思想和方法
12.1C和C++最大区别
12.2一个代码重构的例子
12.3实现代码重用需要考虑的问题
12.4为什么需要设计模式
12.5再论C++的复杂性
参考文献