除非另有明确说明,否则在c ++中总是通过引用传递哪些内容?

时间:2019-05-23 20:59:10

标签: c++

我一直认为指针总是在c ++中通过引用传递。

Obj* a=0;

Init(a);

在初始化的实现中,我初始化了对象。但是当函数调用完成后,指针a仍为空。

所以我不得不通过引用传递指针。所以传递是相同的,但是我将函数声明更改为

Init(obj*&)

现在可以使用了。

所以我的问题是在c ++中默认情况下通过引用传递了什么东西?

编辑:这是令我困惑的答案。这个家伙正在传递一个char数组指针,并且该指针在返回https://stackoverflow.com/a/8032233

时被更改

1 个答案:

答案 0 :(得分:6)

没有类型总是“默认情况下通过c ++中的引用传递”。如果要通过引用传递,则必须在函数签名中明确指出。