1、C++是静态类型语言,在编译时执行类型检查。
2、C++最重要的特征是类,程序员可以使用类自定义数据类型。C++的表达能力是通过支持一些允许程序员定义新数据结构的机制来提升的。
3、C++基本内置类型:
类型 | 含义 | 32编译器最小存储空间 | 64位编译器最小存储空间 |
bool | 布尔值 | - | - |
char | 字符型 | 1 | 1 |
wchar_t | 宽字符型 | 2 | 2 |
short | 短整型 | 2 | 2 |
int | 整型 | 4 | 4 |
long | 长整型 | 4 | 8 |
float | 单精度浮点型 | 4 | 4 |
double | 双精度浮点型 | 8 | 8 |
long double | 扩展精度浮点型 | 12 | 16 |
void* | void指针 | 4 | 8 |
整型赋值出现超过指定类型的对象取值范围的值,会对可能取值数目求模后赋值。如:8位的usigned char取值范围为:0-255,如果将366赋值给它,则取值为366(mod 256)=110.
整型计算使用int型不易出错,浮点型使用double基本不会错且代价可以忽略。
4、变量名--变量标识符:
(1)可以由字母、数字、下划线组成。变量名必须以字母或下划线开头,且区分大小写;
(2)C++关键字不能作标识符;
(3)变量名一般用小写字母;
(4)变量名应能帮助记忆和区别用法;
(5)包含多个词的标识符可以在每个词之间加上下划线,或每个词的第一个字母大写。
5、变量初始化规则
(1)内置类型变量的初始化:函数体外定义的变量都自动初始化成0,在函数体(包括主函数)内定义的内置类型变量不进行自动初始化。未初始化变量引起的错误难以发现,易引起运行问题。
注:内置类型变量:上表处最后一个类型均为内置类型变量。
(2)类类型变量的初始化:通过默认构造函数或者构造函数进行初始化。
6、const限定符
const int bufSize = 512;将bufSize常量化,且不允许修改。const引用是指向const对象的引用,非const引用是指向非const对象的引用。
7、typedef可以用来定义类型的同义词,它并没有引入新的类型,而是现有数据类型的同义词。
8、枚举类型enum第一个成员默认赋值为0,后面的每个枚举成员赋值比前面的大1。枚举类型的对象的初始化或赋值,只能通过其枚举成员或者同一枚举类型的其他对象来进行。
9、class和struct关键字定义类的唯一差别在于默认访问级别不同。class的成员默认为private,struct的成员默认为public。