【发布时间】:2021-12-19 03:18:24
【问题描述】:
真是愚蠢的问题,但我很困惑。
所以,我的理解是,如果你有:
int i(3);
int& j(i);
int* k(&i);
在这种情况下,如果j的值发生变化,那么i的值也会发生变化,因为j基本上是i的别名?另一方面,如果我们让k指向别的东西,那么i和j的值根本不会改变,对吧?
如果以上是真的,那么如果我们有:
a = 1; b = 2;
p = &a; q = &b;
*p = *q;
那为什么a 的值会变成2?我以为p 只是指向别的东西并且不会修改a 的值?
【问题讨论】: