指针是地址,引用是别名
因此指针可以被申明为哪里也不指,nullptr or unintialized,地址本身也可以进行算数运算。
引用是别名,所以要求被赋予别名的东西事先存在(initialized),即使这个东西是被 fake 出来的,不能声明一个没有本体的引用
int data = 1;
int &a = data; // ref to real stuff, good
int &b = *((int*)0x123); //fake stuff, still good, but will explode when you access the value of it.
int &c; //bad, won't compile
int* p; //good
int* q = &data; //good
【 在 SHENOK (石室食士) 的大作中提到: 】
: 我觉得应该是能否进行加减这种运算吧
: 有人答“一个用*声明和访问内容, 一个用&声明, 直接访问”, 应该怎么办?
--
FROM 203.110.132.*