欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C++中int *a; int &a; int & *a; int * &a

程序员文章站 2022-06-01 22:10:23
...

C++中指针和应用的不同混用方式往往具有截然不同的语义,所以这里详细地对几种指针和引用的混用方式进行区分,指针和引用的混用常见的如下面几种:

int i;
int *a = &i;		//这里a是一个指针,它指向变量i
int &b = i;		    //这里b是一个引用,它是变量i的引用(别名)
int * &c = a;		//这里c是一个引用,它是指针a的引用
int & *d;	        //这里d是一个指针,它指向引用,但引用不是实体,所以这是错误的

区分技巧:在分析上面代码时,可以从变量标识符开始从右往左看,最靠近标识符的是变量的本质类型,而再往左即为对变量类型的进一步修饰。

举例 :

int * & a;

标识符a的左边紧邻的是&,证明a是一个引用变量,而再往左是*,可见a是一个指针的引用,再往左是int,可见a是一个指向int类型的指针的引用。

相关标签: C int *