网站首页  软件下载  游戏下载  翻译软件  电子书下载  电影下载  电视剧下载  教程攻略

请输入您要查询的图书:

 

书名 C++程序设计精要教程
分类
作者 马光志 编
出版社 人民邮电出版社
下载
简介
内容推荐
本书结合C++程序,简要介绍了汇编语言,并以栈和队列为主线,逐步深入面向对象的概念。本书从面向过程转向面向对象的编程开始,接着引入类、内联、线程、异常、虚函数、运算符重载、移动语义等概念实现栈和队列,然后基于继承和聚合等概念通过双栈模拟队列,很后引入类模板、类型转换、类型推导等概念实现栈和队列,深入细致地介绍了ISO/IEC14882:2017标准的全部语法。
为了培养学生面向对象的建模能力,书中按照面向对象的分析与设计步骤,完整展示了骰子游戏的建模过程,并用C++进行了面向对象的程序设计。全书通过挖掘C++概念的应用背景,提供了可供运行的有趣实例和习题。
目录
章C++引论
1.1计算机的体系结构1
1.1.1计算机系统的结构1
1.1.2数据与程序的存储方式3
1.2进制及其转换和运算4
1.2.1计算机采用二进制的原因5
1.2.2C++的常用进制及其运算5
1.380X86系列汇编语言7
1.3.1汇编语言及C++编译简介7
1.3.2汇编指令及C++程序编译9
1.4C++的发展历史及特点12
1.4.1C++的发展历史12
1.4.2C++的特点12
1.5语法图与程序流程图13
1.5.1C++的语法图13
1.5.2程序流程图15
1.6编译环境的安装与使用16
1.6.1编译过程及编译环境16
1.6.2Microsoft Visual Studio 2019的安装17
练习题22
第2章类型、常量及变量
2.1C++的单词23
2.1.1C++的字符集23
2.1.2C++的关键字24
2.2预定义类型及值域和常量25
2.2.1预定义类型及其数值转换25
2.2.2强制类型转换及类型值域26
2.2.3预定义类型及相关常量28
2.3变量及其类型解析31
2.3.1变量的说明和定义31
2.3.2指针及其类型理解34
2.3.3有址引用变量40
2.3.4无址引用变量45
2.3.5元素、下标及数组47
2.4运算符及表达式49
2.4.1位运算与等号运算49
2.4.2指针运算及其结合方向50
2.4.3关系运算及结果转换51
2.5结构与联合52
2.5.1结构体52
2.5.2联合体54
练习题56
第3章语句、函数及程序设计
3.1C++的语句58
3.1.1简单语句58
3.1.2转移语句59
3.1.3分支语句60
3.1.4循环语句63
3.1.5break和continue语句67
3.1.6asm和static_assert语句68
3.2C++的函数68
3.2.1函数说明与定义69
3.2.2头文件与说明70
3.2.3函数的参数说明72
3.2.4函数重载74
3.2.5inline及constexpr函数75
3.2.6线程互斥及线程本地变量77
3.3作用域79
3.3.1全局作用域与模块作用域79
3.3.2局部作用域与块作用域81
3.4生命期82
3.5程序设计实例84
3.5.1栈编程实例84
3.5.2队列编程实例86
3.5.3有限自动机编程实例87
练习题90
第4章C++的类
4.1类的声明及定义92
4.1.1面向对象的基本概念92
4.1.2类及对象定义的实例93
4.2成员访问权限及突破方法97
4.2.1成员的访问权限97
4.2.2突破成员的访问权限98
4.3内联、匿名类及位段99
4.3.1函数成员的内联99
4.3.2无对象的匿名联合101
4.3.3局部类及位段成员102
4.4new和delete运算符103
4.4.1简单类型及单个对象内存管理103
4.4.2复杂类型及对象数组内存管理105
4.5隐含参数this107
4.6对象的构造与析构109
4.6.1构造函数及对象初始化109
4.6.2成员默认值及构造与析构110
4.7类及对象的内存布局112
练习题116
第5章成员及成员指针
5.1实例成员指针117
5.1.1实例成员指针的用法117
5.1.2实例成员指针的限制118
5.2const、volatile和mutable119
5.2.1const和volatile的用法119
5.2.2mutable实例数据成员123
5.3静态数据成员124
5.3.1静态数据成员的用法124
5.3.2静态数据成员的限制126
5.4静态函数成员128
5.4.1静态函数成员的访问128
5.4.2静态函数成员的限制129
5.5静态成员指针130
5.5.1静态成员指针的用法130
5.5.2多种指针的混合用法131
5.6联合的成员指针132
练习题133
第6章继承与构造
6.1单继承类136
6.2继承方式138
6.2.1继承后成员的访问权限138
6.2.2访问权限的修改141
6.3成员访问142
6.4构造与析构143
6.4.1对象构造的执行顺序143
6.4.2new、delete引起的构造与析构144
6.5父类和子类145
6.5.1父类及其函数调用145
6.5.2友元和派生类函数中的父子类关系147
6.6派生类的内存布局148
练习题149
第7章可访问性
7.1作用域152
7.1.1面向对象的作用域152
7.1.2面向过程的作用域155
7.2名字空间156
7.2.1名字空间的基本用法156
7.2.2使用名字空间的注意事项158
7.3成员友元160
7.3.1成员友元的一般用法161
7.3.2互为依赖的类的友元162
7.4普通友元及其注意事项163
7.4.1普通友元的一般用法163
7.4.2友元使用的注意事项165
7.5覆盖与隐藏167
7.5.1覆盖与隐藏的用法167
7.5.2使用using避免成员覆盖169
练习题170
第8章多态与虚函数
8.1虚函数174
8.1.1虚函数的声明及定义174
8.1.2虚函数的重载及内联176
8.2虚析构函数179
8.3类的引用180
8.3.1类的引用变量及其析构181
8.3.2类的引用参数及其析构183
8.4抽象类186
8.4.1抽象类的定义及用法186
8.4.2抽象类的应用实例187
8.5虚函数友元与晚期绑定189
8.5.1虚函数作为友元190
8.5.2虚函数的晚期绑定191
8.6有虚函数时的内存布局192
8.6.1基类有虚函数时的内存布局192
8.6.2基类无虚函数时的内存布局193
练习题194
第9章多继承与虚基类
9.1多继承类196
9.1.1无多继承的替代方案196
9.1.2多继承存在的问题197
9.2虚基类198
9.3派生类成员200
9.3.1无虚基类时的成员同名200
9.3.2有虚基类时的成员同名201
9.4单重及多重继承的构造与析构202
9.4.1单继承的构造与析构202
9.4.2多继承的构造与析构204
9.5多继承类的内存布局205
9.5.1无虚基类时的内存布局205
9.5.2有虚基类时的内存布局207
练习题209
0章异常与断言
10.1异常处理212
10.1.1抛出与捕获212
10.1.2异常的传播213
10.2捕获顺序214
10.3函数的异常接口216
10.3.1异常接口声明216
10.3.2noexcept接口217
10.4异常类型219
10.5异常对象的析构220
10.5.1通过对象指针析构220
10.5.2未完成对象的析构221
10.6断言223
练习题224
1章运算符重载
11.1运算符概述225
11.1.1结果为左值的运算符225
11.1.2运算符重载的分类226
11.1.3成员与非成员重载227
11.2运算符参数228
11.2.1自增与自减的重载228
11.2.2重载->运算符230
11.2.3单双目运算符的重载231
11.3赋值与调用232
11.3.1赋值运算符的重载232
11.3.2构造函数的重载233
11.3.3安全的编程方法235
11.4强制类型转换236
11.4.1单个显式参数构造函数236
11.4.2强制类型转换重载函数237
11.5重载new和delete238
11.6运算符重载实例240
11.6.1符号表运算的重载实例240
11.6.2栈及队列运算重载实例241
练习题244
2章类型解析、转换与推导
12.1隐式与显式类型转换250
12.1.1简单类型的隐式转换250
12.1.2简单类型的显式转换252
12.1.3简单类型的转换结果253
12.2cast系列类型转换256
12.2.1static_cast——静态转换256
12.2.2const_cast——只读转换257
12.2.3dynamic_cast——动态转换260
12.2.4reinterpret_cast——重释转换263
12.3类型转换实例265
12.3.1typeid获取类型标识265
12.3.2explicit要求显式调用267
12.3.3栈的类型转换实例268
12.4自动类型推导270
12.4.1auto的一般用法271
12.4.2auto用于函数和数组271
12.4.3表达式类型的提取272
12.5Lambda表达式273
12.5.1Lambda表达式的声明273
12.5.2Lambda表达式的参数275
12.5.3准函数Lambda表达式278
练习题279
3章模板与内存回收
13.1变量模板及其实例280
13.1.1变量模板的定义280
13.1.2变量模板的实例化281
13.2函数模板282
13.2.1函数模板的定义282
13.2.2成员函数模板的定义283
13.2.3函数模板的参数284
13.3函数模板实例化285
13.3.1函数模板强制实例化285
13.3.2函数模板实例特化286
13.3.3涉及指针的模板实例化287
13.4类模板288
13.4.1类模板的定义288
13.4.2派生类类模板的定义289
13.4.3多类型参数的类模板290
13.4.4省略参数的类模板290
13.4.5类模板的友元及Lambda表达式292
13.5类模板的实例化及特化294
13.5.1类模板的实例化294
13.5.2类模板实例特化294
13.5.3类模板的部分特化296
13.5.4实例化与类型推导297
13.5.5类模板及实例成员指针298
13.5.6模板分隔符的二义性299
13.5.7类模板与泛型300
13.6内存回收实例303
练习题305
4章流及类库
14.1流类概述307
14.2输出流308
14.3输入流311
14.4文件流312
14.5串流处理314
练习题315
5章面向对象开发实例
15.1面向对象设计概述316
15.2对象的静态模型317
15.3面向对象的分析319
15.4对象的设计与实现320
15.5骰子游戏模型设计实例322
15.5.1问题描述322
15.5.2对象模型322
15.5.3对象设计324
15.6游戏模型程序设计326
练习题331
参考文献338
随便看

 

霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。

 

Copyright © 2002-2024 101bt.net All Rights Reserved
更新时间:2025/1/25 7:04:07