C++基础知识 - 指针引用

指针引用

指针变量的定义

int x = 666; 
int *p = &x;

int* &q = p; //定义指针变量的引用

int* &q = p; 这叫做指针的引用。

不要觉得看着复杂,其实一点也不复杂。

我帮你拆开来看:

按照C++程序员的习惯,指针“*”号是和类型放在一起的。

指针的引用能够全局修改指针变量!

引用是C++中很强大的语法,在编程中极其实用。

 
 
使用二级指针和指针引用,都能把函数内的变量地址带出到函数外部

#include 
#include 

using namespace std;

//二级指针版
void func(int** x) {
	int tmp = 100;
	*x = &tmp;
}

//指针引用版, 实际上编译器私底下会换成二级指针
void func(int*& x) {
	int tmp = 100;
	x = &tmp;
}

int main(void) {
	int* x = NULL;

	//使用二级指针把tmp带出函数
	//func(&x);

	//使用引用把tmp带出函数
	func(x);

	cout << *x << endl;

	system("pause");
	return 0;
}

你可能感兴趣的:(C++,c++,visual,studio,开发语言)