首页 > 后端开发 > C++ > 正文

指针与引用:何时在函数参数中使用指针?

Barbara Streisand
发布: 2024-11-02 20:34:03
原创
368 人浏览过

Pointers vs. References: When to Use Each in Function Parameters?

参数传递中的指针与引用

将指针和引用视为函数参数,提供的代码片段确实具有功能相似之处:

int foo(bar* p) {
  return p->someInt();
}
登录后复制

int foo(bar& r) {
  return r.someInt();
}
登录后复制

但是,两者之间有细微的区别:

  • 空指针:指针参数允许传递 nullptr,而引用参数不能分配 nullptr。
  • 优化: 在某些情况下,编译器可能会优化指针上的引用参数,从而减少开销。

在 C 中,有意不使用指针显式实现引用。相反,它们充当引用变量的“同义词”。这个概念可以在不需要指针的地方进行编译器优化。

指针和引用之间的其他显着差异包括:

  • 无法重新分配:引用无法重新分配,而指针可以。
  • 地址: 获取指针的地址返回指针本身的地址,获取引用的地址返回被引用对象的地址。

以上是指针与引用:何时在函数参数中使用指针?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板