C++学习也有一段时间了,把读书笔记整理出来,方便平时的复习和巩固。

C++ <wbr>Primer <wbr>学习笔记

 

前言

#  

1. 现代C++可以看成由哪三部分组成?
2. C++学习的两个层面(或步骤)是什么?

第1章 快速入门

 

1. 构成函数的四个要素是什么?
2. main函数的返回值是多少代表程序执行成功?
3. MS命令行编译程序对cpp文件进行编译的控制台命令是什么?
4. main函数的返回值如何在命令行下查看?
5. iostream标准库定义了哪4个IO对象?作用分别是什么?
6. cin、cout的命名空间是什么?
7. 作用域操作符是什么?
8. 会用标准io库编写程序,需要include什么?
9. C++有几种注释类型?
10. 注释是否可以换行?注释是否可以嵌套?
11. 程序有几种错误?修改bug的技巧是什么?
12. 如何读入未知个数的输入?

第2章 变量和基本类型

#  

1. 一般程序语言所包含的元素有哪些?(5个)
2. 大多数现代程序设计语言都采用哪两种方式对基本集进行扩充?
3. C++最重要的特征是什么?
4. C++内置了几种基本类型?
5. 整型分哪两类?默认是哪种类型?
6. 整型字面常量有哪三种表示方法?后缀有几种,如何书写?
7. 浮点字面值的后缀有几种,如何书写?默认类型是什么?
8. 非打印字符的转义序列有哪些?
9. 通用转义字符有哪两种写法?
10. 多行字符串字面值有哪两种写法?哪种更常用?
11. 变量的本质是什么?作用是什么?变量的类型能决定哪三个方面?变量命名有哪些习
惯?哪些标识符不能做变量名。
12. C++的表达式分哪两种?
13. 左值和右值有什么区别?
14. 为什么左值和右值的使用影响程序的操作和性能?
15. C++支持哪两种初始化形式?如何书写?有何区别?
16. 赋值和初始化有什么区别?复制初始化和直接初始化有什么差别?
17. 对于内置类型,复制初始化和直接初始化有区别吗?
18. 类是用何种机制实现初始化的?
19. 那种情况不能使用复制初始化?
20. 系统自动初始化变量的结果取决于哪两个因素?内置类型和类类型分别如何初始化?
21. 写出string的三种初始化方法。
22. 声明和定义的区别是什么?他们之间的关系是什么?
23. 不是定义的声明有唯一一种表达形式是什么?
24. 什么情况下需要与定义分离的多个声明?
25. C++有哪六种作用域?什么是作用域嵌套?作用域嵌套的最佳实践是什么?
26. 变量声明和定义的最佳实践是什么?这样做的好处是什么?
27. 当程序中出现幻数时,有哪两个缺点?
28. 常量定义如何书写?定义时必须初始化吗?为什么?
29. const默认的作用域是什么?
30. 如何定义const为全程序作用域?这种写法对非const是否适用?
31. 引用的主要用途是什么?
32. 引用的本质是什么?如何书写?
33. 为什么初始化以后不能将引用绑定到别的对象上,或者说只能在定义引用是对其进行
初始化?
34. 引用初始化的两个限制是什么?
35. const引用的作用是什么?特别之处是什么?
36. 非const引用的限制是什么?const引用和非const引用的区别是什么?
37. 使用typedef的目的有那三个?
38. typedef的本质是什么?
39. typedef的名字是如何使用的?
40. 定义和初始化枚举的写法是什么?
41. 枚举的默认初始化是什么?
42. 枚举成员的值有唯一性要求吗?
43. 枚举成员的初始化有哪三种方式?分别如何书写?
44. 枚举类型对象的初始化有何特殊要求?
45. 每个类都定义了一个什么和什么?它们分别代表什么?
46. 定义类的步骤如何?
47. 类定义后必须有一个什么符号?
48. 定义变量和定义数据成员的重要区别是什么?
49. 类成员的访问类型有哪几种?类的定义中可以有多少个访问标号?
50. structure和class的区别是什么?
51. 正确使用头文件的两个好处是什么?
52. 头文件可以用于声明还是定义?
53. 头文件不应该包含定义有那三个例外?
54. 预处理器变量命名规则是什么?为什么?
55. 预防头文件被多次包含多次的措施是什么?如何书写?最佳实践是什么?

第3章 标准库类型

#  

1. 写出string类型的五种初始化方法
2. 如何对string对象进行读写操作,如何读入未知数目的string对象?
3. 如何读取整行文本?string对象中是否具有换行符?
4. string对象的8个基本操作是什么?如何书写?
5. size操作结果的类型是什么?
6. 字符处理的头文件是什么?有哪13个函数?
7. string类型的头文件是什么?
8. vector类型的头文件是什么?
9. vector的本质是什么?
10. 写出vector的四个初始化方法。
11. vector对象的7个基本操作是什么?如何书写?
12. 编写for循环将vector iv(10)中所有元素设为10;
13. vector下标操作是否添加元素?
14. 什么是迭代器?访问vector中元素的两种方法是什么?
15. 下标操作和迭代器操作哪一个更通用?
16. 容器的哪两个函数可以返回迭代器对象?
17. 用迭代器的方法操作vector iv(10)是每个元素为10;
18. 容器中的只读迭代器类型如何使用?与const iterator有何区别?
19. iterator的算术运算有哪两种?
20. 写出bitset的四个初始化方法;
21. bitset对象的14个基本操作是什么?

第8章 标准IO库

#  

1. IO标准库有种类型?分别包含在什么头文件中?它们之间的关系怎样(画图)?它们应用的场合怎样?
2. IO标准库是否支持国际化?如何支持?IO类型是否支持复制或赋值?不能复制有什么影响?
3. stream中的状态有哪几种?在哪个状态常量中定义?如何获取这些状态?如何设置这些状态?什么场合会设置相应的状态?
4. stream中的缓冲区有哪五种刷新场合?缓冲区刷新操纵符有哪四种?有何区别?为什么用endl而不用"\n"?
5. 如何将输入和输出绑定?绑定的作用是什么?
6. 如何打开文件?如何检查文件是否被打开?如何将文件重新捆绑?如何清楚文件状态?什么场合需要清除文件状态?文件打开的模式有哪几种?
7. 字符串流的常见用法是什么?