1、每个字节由8个比特构成,例如,int 类型占16个bit,2个字节;char类型占8个bit,1字节。
2、带符号类型和不带符号类型(signed和unsigned),其中不带符号类型是大于等于0的数,负数转换成无符号类型时,则为负数值+无符号类型的模,如int i=-42,且int型占32位,则此时无符号类型的模为2^32,int转成无符号类型则为:2^32-42.
3、以0开始的整数代表8进制,以0x或0X开头的代表十六进制
4、以单引号(' ')括起来的是char型字面值,以双引号(" ")括起来的是字符串型字面值。
5、带反斜杠('\')的为转义字符,\n表换行,\表回车,\后面加八进制或十六进制表字母。
6、对象是指一块能够存储数据,并且具有某种类型的内存空间。
7、初始化和赋值完全不同,初始化是在创建时,赋值则是在初始化之后。
8、定义在任何函数体外的变量初始值为0,定义在函数体内部的内置类型变量不被初始化。
9、声明在变量前加关键字extern,声明实现了文件间共享变量。
10、C++标识符可由字母、下划线和数字组成;在标识符中不能出现两个连续的下划线,也不能以下划线紧连大写字母开头。
11、大多数定义在函数体外的变量具有全局作用域。
12、引用是为已存在的对象起的另外一个名字(&),引用必须初始化。
13、指针也实现了对其他对象的间接访问,定义为int *,其存放对象的地址,想要获得该地址需要取地址符&,访问对象时采用解引用符*,不必须初始化。
14、引用不是对象,所以不能对引用进行引用;指针是对象,所以可以有指向指针的指针。
15、引用一旦绑定对象则不可更改;指针在生命周期中可以指向不同的对象。
16、对引用操作就是对绑定对象操作,对指针解引用符操作,则是对指针指向的对象操作。
17、引用和指针都不能引用或指向引用。
18、void *可以存放任意类型的指针。
19、const修饰的变量不能进行更改,变量必须进行初始化。
20、对const对象进行引用称为对常量的引用,当指针本身为常量时,称为常量指针(const int *p指针指向int型常量,int *const p int型的指针常量)。
21、typedef定义类型别名。
22、auto让编译器通过初始值推断变量的类型;decltype选择并返回操作数的数据类型,如果decltype的表达式时加上括号的变量,则结果为引用。
23、类体右侧花括号后必须写一个分号,不写分号并紧跟变量名时,表示对该类型对象的定义。