The Same:
都有地址的概念,指针式只想一块内存的地址,引用是一块内存的别名。
Difference:
- 声明形式:指针是“*”,引用是“&”。
- 性质:指针是一个实体(int),引用是一个别名。
- 使用方式:指针需要解引用(*),引用不要。
- 定义方式:指针能够被多次定义,引用只能被初始化一次。
- 关于const:指针有const, 引用没有。
- 关于NULL:指针能为NULL,引用不可以。
- 关于sizeof:“sizeof指针”是指针的大小,“sizeof引用”是所指对象、变量的大小。
- 关于内存分配:程序为指针变量分配内存区域,而引用不需要分配内存区域。