C++指针基础

一.关于 & 和 * 这两个符号

在声明语句和普通语句中,这两个符号的意义是分别不同的:

int  *pCount = &count ;
// 这一句是声明指针变量 pCount,* 表示 pCount 是一个指针变量,pCount 的值为 count 的地址,而 & 是地址运算符,用于取地址;
int  &refCount = count ;
// 这里的 & 不是上一个例子中的地址运算符,而是表示 refCount 是对 count 的引用,相当于 count 的一个别名;
*pCount = 5;              
// 这里的 * 不是第一个例子里的表示指针变量,而是解引用运算符,*pCount 作为整体,值为 pCount 这个地址对应的值。


二.C++向函数传递实参的三种方式(附加个人理解):

  1. 按值方式
  2. 利用引用实参的按引用方式(形参名相当于实参的别名,可以理解为真正的引用)
  3. 利用指针的按引用方式(利用指针实现引用的功能:在实参向形参传递的过程中,传递的仍然是一个值,但是与按值传递不同的是,这个值是地址值,于是可以在被调用的函数体中通过访问地址进行对变量的赋值,从而达到引用的效果)

猜你喜欢

转载自blog.csdn.net/MR_Wan__/article/details/42728353