C++primer 2.5const限定符(未完)

当出现指针、引用一起的时候,我们不容易区分到底是指针还是引用。

int main()
{
int i=42;
int *p;
int *&r=p;//r是一个对指针p的引用
r=&i;//r引用了一个指针,因此给r赋值&i 就是令p指向i
*r=0;//解引用r得到i,也就是p指向的对象,将i值改为0

}

最简单的方法就是从右到左阅读r的定义。离变量最近的符号(此例中是&r的符号&)对变量的类型有最直接的影响,因此r是一个引用。

声明符的其余部分用以确定r引用的类型是什么,此例中的符号* 说明r引用的是一个指针,最后声明的基本数据类型部分指出r引用的是一个int指针。

注:关于const限定符还有一些,这里没有写

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章