【发布时间】:2013-04-22 23:21:45
【问题描述】:
函数能否更改作为参数传递的指针的目标,以使效果保持在函数之外?
void load(type *parameter)
{
delete parameter;
parameter = new type("second");
}
type *pointer = new type("first");
load(pointer);
在这个最小的例子中,pointer 会指向第二个分配对象吗?如果没有,我怎么能得到这种行为?
更新:为了澄清我的意图,如果参数是普通类型而不是指针,我将使用以下代码。在这种情况下,我会简单地使用引用。
void load(type ¶meter)
{
parameter = type("second");
}
type variable("first");
load(&variable);
这很简单,但我尝试用指针做同样的事情。
【问题讨论】:
标签: c++ function pointers reference scope