你必须知道的222个C++语言问题PDF电子书下载
- 电子书积分:13 积分如何计算积分?
- 作 者:范立锋,李世欣编著
- 出 版 社:北京:人民邮电出版社
- 出版年份:2010
- ISBN:9787115224965
- 页数:377 页
第1章 C++与C语言的区别和联系 1
FAQ1.01 C++与C语言比较有哪些特点? 1
FAQ1.02 C++与C语言的代码注释风格有什么不同? 2
FAQ1.03 C++与C语言的程序结构有何不同? 3
FAQ1.04 C++与C语言是如何处理输入与输出的? 5
FAQ1.05 C++中局部变量的声明方式是否与C语言相同? 7
FAQ1.06 在函数原型的使用方面,C++与C语言是否一致? 8
FAQ1.07 在常量的定义方面,C++与C语言有何不同? 10
FAQ1.08 C语言允许函数重载么?C++对于函数重载做出了哪些规定? 11
FAQ1.09 处理动态存储分配问题时C++与C语言有何不同? 13
第2章 面向对象的设计思想 15
FAQ2.01 为什么采用面向对象编程模式? 15
FAQ2.02 面向对象技术包含哪些基本概念? 16
FAQ2.03 面向对象技术的基本特征包括哪些? 18
FAQ2.04 为什么封装对面向对象来说很重要? 20
FAQ2.05 接口与实现的分离有什么好处? 21
FAQ2.06 抽象是什么? 22
FAQ2.07 封装与抽象有何联系? 23
FAQ2.08 继承是否会削弱封装机制? 24
FAQ2.09 组合是怎样定义的,它有什么作用? 25
FAQ2.10 组合的类型都包括哪些? 26
FAQ2.11 如何理解动态特性? 27
第3章 C++中的类和对象 29
FAQ3.01 如何理解类和对象? 29
FAQ3.02 如何理解对象的初始化? 32
FAQ3.03 如何理解对象的生存周期? 35
FAQ3.04 如何向函数传递对象? 37
FAQ3.05 编写C++类时需要注意哪些问题? 40
FAQ3.06 如何理解构造函数? 42
FAQ3.07 默认构造函数是什么,它有什么特点? 44
FAQ3.08 何时调用拷贝构造函数? 46
FAQ3.09 深拷贝与浅拷贝的区别是什么? 49
FAQ3.10 如何理解析构函数? 51
FAQ3.11 程序如何处理静态成员变量及静态成员函数? 54
FAQ3.12 为什么使用友元?如何使用? 56
FAQ3.13 使用友元有什么优点? 58
第4章 继承 60
FAQ4.01 如何理解C++中的继承? 60
FAQ4.02 C++程序的继承结构是怎样的? 61
FAQ4.03 当派生类与基类成员名称冲突时应如何解决? 64
FAQ4.04 为什么要使用虚基类? 65
FAQ4.05 继承体系中构造函数的调用顺序是怎样的? 67
FAQ4.06 在继承中如何使用public、private以及protected关键字? 69
FAQ4.07 类的默认访问权限是什么?为什么使用它作为默认权限? 71
FAQ4.08 为什么要使用protected关键字?如何使用? 72
FAQ4.09 为什么派生类不能访问其基类的private成员? 73
FAQ4.10 struct与class之间有什么不同? 74
FAQ4.11 如何为基类构造函数传递参数? 75
第5章 多态 78
FAQ5.01 如何理解C++中的捆绑? 78
FAQ5.02 如何理解和使用虚函数? 79
FAQ5.03 如何理解和使用纯虚函数? 81
FAQ5.04 如何理解和使用抽象类? 82
FAQ5.05 多态是如何实现的? 84
FAQ5.06 如何理解静态多态与动态多态? 86
FAQ5.07 如何理解虚函数和构造函数? 86
FAQ5.08 如何理解虚函数和析构函数? 87
第6章 指针与字符串 89
FAQ6.01 如何理解sizeof操作符? 89
FAQ6.02 指针是什么? 90
FAQ6.03 如何理解地址和指针的关系? 91
FAQ6.04 如何使用取地址操作符&? 92
FAQ6.05 指针与取地址操作符&怎样结合使用? 93
FAQ6.06 如何将指针与间接寻址操作符*结合使用? 94
FAQ6.07 指针的运算有哪些? 95
FAQ6.08 指针变量与引用有什么区别? 96
FAQ6.09 指针变量与变量指针有什么区别? 97
FAQ6.10 指针的比较指的是什么? 97
FAQ6.11 如何理解多级指针? 98
FAQ6.12 如何使用函数指针? 100
FAQ6.13 如何理解指针函数? 101
FAQ6.14 在指针中如何使用const限定符? 102
FAQ6.15 指针和数组之间有什么联系? 104
FAQ6.16 如何理解指针数组? 106
FAQ6.17 使用指针时有哪些常见的错误? 107
FAQ6.18 字符和字符串有什么区别? 109
FAQ6.19 常用的字符串操作函数有哪些? 110
FAQ6.20 如何理解字符数组和字符指针? 113
第7章 运算符重载 116
FAQ7.01 为什么使用运算符重载? 116
FAQ7.02 使用运算符重载应遵循哪些规则? 119
FAQ7.03 哪些运算符不能重载?哪些可以重载? 121
FAQ7.04 为什么要使用友元函数重载运算符? 122
FAQ7.05 使用友元函数重载“++”、“--”运算符时可能会出现什么问题? 125
FAQ7.06 如何实现NEW和DELETE运算符的重载? 127
FAQ7.07 如何重载数组下标运算符? 129
FAQ7.08 如何将运算符函数作为成员函数使用? 131
FAQ7.09 成员运算符函数与友元运算符函数有什么区别? 133
第8章 用户自定义数据类型、结构和枚举 135
FAQ8.01 如何定义结构类型及结构声明? 135
FAQ8.02 对于无名结构是如何使用的? 137
FAQ8.03 如何通过点操作符访问结构? 138
FAQ8.04 结构数组是如何定义及使用的? 140
FAQ8.05 如何定义及使用结构中的结构? 142
FAQ8.06 如何使用多重结构嵌套? 144
FAQ8.07 如何将结构地址传递给函数? 146
FAQ8.08 什么是枚举类型?如何使用枚举类型? 148
第9章 类型转换与RTTI 151
FAQ9.01 C++预定义的类型转换有哪些方式? 151
FAQ9.02 如何实现类这种数据类型与其他数据类型的转换? 152
FAQ9.03 为什么需要转换函数?如何创建转换函数? 156
FAQ9.04 C++新定义了哪几个强制转换运算符?作用分别是什么? 158
FAQ9.05 如何区分静态类型检查和动态类型检查? 161
FAQ9.06 为什么要避免使用动态类型检查? 162
FAQ9.07 什么是运行时类型标识? 163
FAQ9.08 什么是downcast? 166
FAQ9.09 为什么向下的类型转换是危险的? 168
FAQ9.10 dynamic_cast〈T〉()函数的作用是什么? 168
FAQ9.11 static_cast〈T〉()函数的作用是什么? 170
FAQ9.12 typeid()函数的作用是什么? 172
第10章 异常处理 175
FAQ10.01 C++异常处理的原理是什么? 175
FAQ10.02 异常处理是如何实现的? 176
FAQ10.03 使用异常时应该注意哪些方面? 182
FAQ10.04 抛出的异常和捕获的异常是否必须匹配? 185
FAQ10.05 如何处理TRY语句中函数抛出的异常? 186
FAQ10.06 程序在何时执行CATCH语句? 188
FAQ10.07 一个TRY语句是否可以使用多个CATCH语句?如何使用? 189
FAQ10.08 对异常使用省略符有什么作用? 191
FAQ10.09 THROW语句具体有什么作用? 193
FAQ10.10 如何实现重新抛出异常? 194
FAQ10.11 构造和析构对象时产生的异常应该如何处理? 196
FAQ10.12 如何使用默认函数参数避免异常和错误的发生? 197
FAQ10.13 处理异常时terminate()函数和unexpected()函数分别有什么作用? 198
第11章 标准模板库 201
FAQ11.01 什么是标准模板库?为什么要使用标准模板库? 201
FAQ11.02 标准模板库包含哪些头文件? 202
FAQ11.03 如何理解容器? 204
FAQ11.04 标准模板库中容器的存储方式和访问方式 206
FAQ11.05 标准模板库中的容器是如何实现的? 207
FAQ11.06 标准模板库支持哪几个序列容器? 208
FAQ11.07 关联容器是如何工作的? 209
FAQ11.08 迭代器在标准模板库设计中有什么重要作用? 211
FAQ11.09 如何理解输入输出迭代器? 213
FAQ11.10 STL包含哪些算法? 215
FAQ11.11 向量是什么?如何使用向量? 218
FAQ11.12 如何构造一个LIST类型的对象? 221
FAQ11.13 如何为链表插入对象、移除对象以及为对象赋值? 223
FAQ11.14 如何遍历链表对象? 224
FAQ11.15 SLIST和LIST有何区别? 225
FAQ11.16 什么是DEQUE容器?如何使用这种容器? 226
FAQ11.17 如何对DEQUE容器使用REVERSE迭代器? 228
FAQ11.18 如何管理DEQUE队形的大小? 230
FAQ11.19 如何理解MAP对象? 231
FAQ11.20 如何使用成员函数管理MAP? 232
FAQ11.21 如何控制MAP对象的大小及内容? 238
FAQ11.22 如何理解SET? 239
第12章 通用函数及模板 242
FAQ12.01 如何理解模板? 242
FAQ12.02 如何显式重载通用函数? 244
FAQ12.03 什么情况下不能使用通用函数代替重载函数? 246
FAQ12.04 多个文件之间是否可以编译相同的函数模板定义? 247
FAQ12.05 类模板和模板类之间有什么关系? 248
FAQ12.06 当函数模板与同名非函数模板函数重载时如何进行调用? 249
FAQ12.07 如何使用模板定义通用类? 250
FAQ12.08 是否可以创建含有多个通用数据类型的通用类? 252
FAQ12.09 创建含有参数的操作符需要注意什么? 253
FAQ12.10 在函数模板中如何使用数组作为参数? 256
第13章 C++中的输入与输出 261
FAQ13.01 为什么C++建立自己的输入输出系统? 261
FAQ13.02 如何设置并清除ios标志? 262
FAQ13.03 如何检测当前格式标志? 264
FAQ13.04 如何重载setf()函数? 265
FAQ13.05 如何使用操作符格式化I/O? 266
FAQ13.06 如何重载“〈〈”? 267
FAQ13.07 如何创建自定义的插入符? 269
FAQ13.08 如何打开文件流? 272
FAQ13.09 如何读写文本文件? 273
FAQ13.10 如何读写二进制文件? 275
FAQ13.11 如何实现每次读取一行文件? 277
FAQ13.12 如何检测文件是否结束? 278
FAQ13.13 如何控制输入输出格式? 280
FAQ13.14 如何创建自定义的提取运算符? 284
FAQ13.15 如何创建无参操作符? 286
FAQ13.16 如何创建带参数的操作符? 287
FAQ13.17 如何实现随机访问? 287
FAQ13.18 如何理解C++的I/O状态? 289
第14章 内存管理 291
FAQ14.01 内存分配方式包括哪几种? 291
FAQ14.02 常见的内存错误有哪些?如何解决? 293
FAQ14.03 指针参数如何传递内存? 295
FAQ14.04 free()和delete()函数如何操作指针? 296
FAQ14.05 对同一指针执行两次删除操作会发生什么? 297
FAQ14.06 动态内存是否会被自动释放? 298
FAQ14.07 当p指向数组时能否执行delete p的操作? 299
FAQ14.08 malloc()/free()函数的使用要点有哪些? 300
FAQ14.09 new()/delete()函数的使用要点有哪些? 301
FAQ14.10 new()/delete()函数与malloc()/free()函数有什么不同? 303
FAQ14.11 new有哪些使用方式? 305
FAQ14.12 如何在预定内存位置建立对象?如何释放该对象占用的空间? 308
FAQ14.13 如何应对内存耗尽问题? 309
FAQ14.14 定义了p=new M(),如果M构造函数抛出异常是否会出现内存泄漏? 310
FAQ14.15 在使用“delete this;”操作时必须注意哪些问题? 311
FAQ14.16 如何释放一个没有明确析构函数对象所占用的空间? 312
FAQ14.17 最简单的防止内存泄漏的方法是什么? 313
第15章 进程及线程 315
FAQ15.01 如何更好地理解进程? 315
FAQ15.02 如何创建进程? 316
FAQ15.03 如何结束进程? 320
FAQ15.04 为什么要使用子进程?如何使用子进程? 321
FAQ15.05 如何更好地理解线程? 322
FAQ15.06 何时需要创建线程?何时不需要创建线程? 324
FAQ15.07 如何使用CreateThread()函数创建简单线程? 325
FAQ15.08 操作系统创建线程分哪几步? 326
FAQ15.09 如何确定线程堆栈的大小? 327
FAQ15.10 如何获得当前线程或进程的句柄? 328
FAQ15.11 如何使用GetThreadTimes()函数获得线程的执行时间? 330
FAQ15.12 GetProcessTimes()和GetThreadTimes()函数有何不同? 331
FAQ15.13 如何更好地理解GetQueueStatus()函数? 335
FAQ15.14 如何处理无句柄的异常? 336
FAQ15.15 如何结束线程? 337
FAQ15.16 如何确定线程或进程的ID? 339
FAQ15.17 操作系统如何安排线程? 340
FAQ15.18 如何理解Windows系统的优先级类? 341
FAQ15.19 如何改变进程的优先级类? 342
FAQ15.20 如何设置线程的相对优先级? 344
FAQ15.21 如何获取线程的当前优先级? 345
FAQ15.22 如何获取线程的上下文? 347
FAQ15.23 线程的暂停及继续是如何实现的? 347
FAQ15.24 什么是线程同步? 348
FAQ15.25 Windows系统支持的最常见的同步对象包括什么? 350
FAQ15.26 如何创建并使用简单的临界区? 351
FAQ15.27 WaitForSingleObject()和WaitForMultipleObject()函数有何区别? 353
FAQ15.28 如何创建并使用互斥体? 357
FAQ15.29 如何理解信号量? 360
第16章 C++与C语言的结合应用 361
FAQ16.01 C++程序如何调用C程序? 361
FAQ16.02 C程序如何调用C++程序? 363
FAQ16.03 当C++程序代码中包含C程序代码应该注意什么? 364
FAQ16.04 如何将C++类的对象传递给C语言的函数? 365
FAQ16.05 C++的“iostream”和C语言的“stdio.h”是否可以一起使用? 367
FAQ16.06 C++的“iostream”和C语言的“stdio.h”比较有什么优势? 368
第17章 关于软件性能的思考 370
FAQ17.01 为什么编码方式会影响软件性能? 370
FAQ17.02 在不需要变量i原数值的情况下,i++和++i哪个更好? 371
FAQ17.03 为什么使用最终类和最终成员函数能提高软件性能? 372
FAQ17.04 为什么成员对象能提高软件性能? 373
FAQ17.05 C++程序中如何从指针、引用的角度提高软件性能? 374
FAQ17.06 想要提高软件性能需要从哪几方面入手? 376
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《强制执行前沿与热点问题》陈兴责编;乔宇 2020
- 《党员干部理论学习培训教材 理论热点问题党员干部学习辅导》(中国)胡磊 2018
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《幼儿园课程资源丛书 幼儿园语言教育资源》周兢编 2015
- 《强磁场下的基础科学问题》中国科学院编 2020
- 《高等学校“十三五”规划教材 C语言程序设计》翟玉峰责任编辑;(中国)李聪,曾志华,江伟 2019
- 《改革进程中的刑事诉讼程序与证据问题研究 基于警察的视角》谢波 2019
- 《马克思主义意识形态建设的基础问题探幽》陈冬生,王枫桥责编 2019
- 《音乐语言的根基》张艺编著 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《人民院士》吴娜著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《中国人民的心》杨朔著;夕琳编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中华人民共和国成立70周年优秀文学作品精选 短篇小说卷 上 全2册》贺邵俊主编 2019
- 《指向核心素养 北京十一学校名师教学设计 数学 九年级 上 配人教版》周志英总主编 2019
- 《中华人民共和国成立70周年优秀文学作品精选 中篇小说卷 下 全3册》洪治纲主编 2019