c++ - 默认情况下是通过引用或值传递的对象
问题描述
new
当将对象传递给方法或函数时,当对象不是由关键字启动时,对象是通过引用还是值传递?
My_object a;
my_function(a);
然后对象是作为引用还是值传递给函数?
void my_function(My_object a){
}
还是我需要添加&
?
void my_function(My_object &a){
}
解决方案
传递对象的方式取决于函数的参数,而不是对象的创建方式。
My_object a
表示它是按值传递的。
要通过引用传递,您需要使用My_object& a
. 如果您不打算更改对象,您可能更喜欢const My_object& a
. 这将避免意外覆盖。
推荐阅读
- php - 如何在 Consul 中将 PHP 应用程序注册为服务
- reflection - memberProperty returnType 超类的类型检查失败
- mysql - mysql 1932 表在引擎中不存在
- orientdb - OrientDB For 循环
- mongodb - 通过harsine公式通过坐标查找mongoDB集合中的文档
- android - 在android中操作任务回栈
- java - 忽略带有 null 的属性(哈希表)值
- java - System.out.printf() 用法
- php - PHP 会话以不同的方式工作 xampp 和 web
- node.js - 如何避免在云存储事件的文件夹上执行 firebase 功能