这个问题很简单,之前可能已经讨论过,但我可以为我的案例找到一个明确的答案。假设我将指针对象传递给函数
#include "foo.h"
int main()
{
foo * aFoo = new foo;
bar(aFoo);
delete aFoo;
aFoo = NULL;
return 0;
}
然后函数是这样写的
void bar (foo *f)
{
f->insert();
}
问题:
那是一个call by value
还是call by reference
?我知道在按值调用中,将对象从 main() 复制到 bar() 会产生开销。所以我想确定这是一个call by reference
.