结论:
int & a等价于 int *const a
证明:
1.首先简单调试测试一下代码的可行性
2.然后赋值pa和pb
3.然后传入*pa和*pb (ps:如果是一般的代码 这里解*pb空指针会报错)
4.进入函数
5.最终会在left=right这行代码报错
这时再运行第二个等价代码代码:
会发现他们以相同的问题在同一个位置报错
并且报错内容为right是空指针所以引用的底层就是指针
对此我们已经可以得到结论 int & a ==int * const a
1.首先简单调试测试一下代码的可行性
2.然后赋值pa和pb
3.然后传入*pa和*pb (ps:如果是一般的代码 这里解*pb空指针会报错)
4.进入函数
5.最终会在left=right这行代码报错
这时再运行第二个等价代码代码:
会发现他们以相同的问题在同一个位置报错
并且报错内容为right是空指针所以引用的底层就是指针
对此我们已经可以得到结论 int & a ==int * const a