注:此处所指的引用皆指左值引用,关于右值引用暂不讨论
一点一滴,慢慢积累
1:引用必为某个对象的引用
2:引用只能被初始化且必须初始化,而不能被赋值(若不初始化,则编译报错)
3:被初始化的引用或者函数形参中的引用参数可以取址,但不允许定义指向引用的指针,但却可以定义指针的引用,如下
int main()
{
int i = 0;
int &ii = i;
int &*p = ⅈ//(定义指针,该指针指向一个引用,此处非法,编译不通过)
int *pp = nullptr;
int *&p = pp;//定义引用,该引用为一个int指针的引用,编译正常
}