面向对象编程(OOP)的本质是设计并扩展自己的数据类型。设计自己的数据类型就是让类型与数据匹配。
内置的C++类型分两组:基本类型和复合类型。
基本类型即整数和浮点数。
复合类型包括:数组、字符串、指针和结构。
C++命名规则:
1.在名称中只能使用字母字符、数据和下划线(_);
2.名称的第一个字符不能是数字;
3.区分大写字符和小写字符;
4.不能将C++关键字用作名称;
5.以两个下划线或下划线和大写字母打头的名称被保留给实现(编译器及其使用的资源)使用。以一个下划线开头的名称被保留给实现,用作全局标识符。
6.C++对于名称的长度没有限制,名称中所有的字符都有意义,但有些平台有长度限制。
如果想用两个或更多的单词组成一个名称,通常的做法 是用下划线字符将单词分开,或者从第二个单词开始将每个单词的第一个字母大写。
整型就是没有小数部分的数字。
字节(byte)通常指的是8位的内存单元。
short是short int的简称,而long是long int的简称。
sizeof运算符返回类型或变量长度,单位为字节。
初始化将赋值和声明合并在一起。也可以使用字面值常量来初始化。可以将变量初始化为另一个变量,条件是后者已经定义过。
通常,int被设置为对目标计算机而言最为“自然”的长度。自然长度(natural size)指的是计算机处理起来效率最高的长度。
如果知道变量可能表示的整数值大于16位整数的最大可能值,则使用long。
char类型是专为存储字符(如字母和数字)而设计的。
类定义了如何表示和控制数据。成员函数归类所有,描述了操作类数据的方法。要通过对象使用成员函数,必须用句点将对象名和函数名称连接起来。句点被称为成员运算符。
换行符可替代endl,用于在输出中重起一行。
可以将换行符嵌入到较长的字符串中,这通常比使用endl方便。
布尔变量的值可以是true或false。
关键字const叫做限定符,因为它限定了声明的含义。
浮点数能够表示带小数部分的数字。计算机将这样的值分成两部分存储。一部分表示值,另一部分用于对值进行放大或缩小。
C++有3种浮点类型:float、double和long double。这些类型是按照他们可以表示的有效数位和允许的指数最小范围来描述的。
C++提供运算符来完成5种基本额算数计算:加法、减法、乘法、除法以及求模。
C++自动执行的类型转化:
1.将一种算术类型的值赋给另一种算术类型的变量时,C++将对值进行转化;
2.表达式中包含不同的类型时,C++将对值进行转换;
3.将参数传递给函数时,C++将对值进行转化。
当运算涉及两种类型时,较小的类型将被转换为较大的类型。
强制类型转换不会修改变量本身,而是创建一个新的、指定类型的值,可以在表达式中使用这个值。
如果使用关键字auto,而不指定变量的类型,编译器将把变量的类型设置成与初始值相同。