指针:一个变量,存储的内容为一个地址;
引用:给一个已有对象起的别名。
●引用在定义时必须被初始化并且不能初始化为NULL,指针没有要求。 (没有NULL引用,有NULL指针)
● 引用不能改变引用关系,指针随意。
●有多级指针没有多级引用
●引用++和指针++表达的含义不同。自增运算结果不一样。引用++是变量的值++;指针++是地址发生了位移;
●指针用sizeof计算大小结果不同,指针在32位内存下是四字节,在64位内存下是8字节,引用结果为类型大小。(4x8=32;8x8=64)(用户角度上讲,引用不单独占空间)
●指针是一个实体,需要分配内存空间;引用只是变量的别名,不需要分配内存空间
●指针是间接访问,引用是直接访问