C#-ref/out
值传递:把数值传进去,自身不进去。
引用传递:把自己传到方法内部去。
值类型默认是值传递,引用类型默认是引用传递。
想要值类型引用传递,需要在参数类型前添加关键词ref/out;
二者酌情况使用。
ref和out的区别
语法不同,但都是引用传递,ref表示参数做引用传递,参数必须有初始化,out表示多返回值,参数传递时不需要有值,内部创建数据返还传去。
using UnityEngine;
public class Test : MonoBehaviour {
void Start() {
Operation operation = new Operation();
int a = 10;
// ref传入时外部必须有值
operation.Add(ref a);
int b;
// out是通过方法内部进行赋值,是用于多返回值
operation.Sub(out b);
}
}
class Operation {
public void Add(ref int a) {
a += 10;
}
public void Sub(out int a) {
a = 10;
}
}
本文来自博客园,作者:坞中客,转载请注明原文链接:https://www.cnblogs.com/wuzhongke/p/16608008.html
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET 使用 DeepSeek R1 开发智能 AI 客户端
· 10亿数据,如何做迁移?
· 推荐几款开源且免费的 .NET MAUI 组件库
· c# 半导体/led行业 晶圆片WaferMap实现 map图实现入门篇
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!