//改函数接受一个指针,然后将指针所指的值置为0
void reset(int *ip)
{
*ip = 0; //改变指针ip所指对象的值
ip = 0; //只改变了ip的局部拷贝,实参未被改变
}
调用reset函数之后,实参所指的对象被置为0,但是实参本身并没有改变:
int i = 42;
reset(&i); //改变i的值二非i的地址
cout << "i = " << i << endl; //输出i = 0
//改函数接受一个指针,然后将指针所指的值置为0
void reset(int *ip)
{
*ip = 0; //改变指针ip所指对象的值
ip = 0; //只改变了ip的局部拷贝,实参未被改变
}
调用reset函数之后,实参所指的对象被置为0,但是实参本身并没有改变:
int i = 42;
reset(&i); //改变i的值二非i的地址
cout << "i = " << i << endl; //输出i = 0