【问题标题】:C++ How reference works behind the scenes [duplicate]C ++参考如何在幕后工作[重复]
【发布时间】:2018-11-16 11:00:31
【问题描述】:

例如在

int *a = 5;
MyFunc(&a);

'&' 的幕后工作是什么?它只是创建一个指向指针的指针并自动推迟它吗?还是在做一些不同的事情。

有没有办法在 C++ 中通过“真实”引用传递,或者一切都是按值传递的指针?

【问题讨论】:

  • 我在这里看不到任何参考资料。 &a 不是引用,它是a 的地址,类型为int**

标签: c++ pointers reference


【解决方案1】:

C++ 中的引用基本上是作为指针实现的。我认为这就是它们在所有语言中的实现方式,而不仅仅是 C++。

这里有一个较早的问题有更好的答案:How is reference implemented internally?

【讨论】:

  • 那么,为什么要投反对票?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-10-01
  • 2019-08-26
  • 2010-09-23
  • 2011-04-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多