热门

最新

红包

立Flag

投票

同城

我的

发布
m0_51572817
Jason_202012191640
3 年前
truem0_51572817


void func(int *p)
{
//*p = 456; //修改了指针指向的值
int value = 456;
p = &value;
}
此时在函数func里,p接收了value的地址,但是并没有改变p指向的内容,此时的p = &value, 仍然是值传递,即使value生命周期是全局的也没用,因为此时用 p = &value, 修改的p的副本,并不是p本身。如果在开发中,中间写了很多代码,突然写一句p = &value, 那就起不到改变指针指向的内容的效果。

一般带有引用&都会改变形参的值,C++开发如果怕内存泄漏,如果不想用指针做形参,那么可以用引用,必要的时候用指针。

C++指针做形参与指针的引用做形参的区别

CSDN App 扫码分享
分享
评论
点赞
打赏
  • 复制链接
  • 举报
下一条:
python笔记2
立即登录