当前位置: 首页 > news >正文

c#ref和out

基本概念

ref 和 out是为了在函数内部改变外部传入的内容 。它们允许方法修改调用者传递的变量值,而不是传递变量的副本。

out规则

调用前可以不初始化变量

方法内部必须先赋值才能使用

方法必须在返回前为 out 参数赋值

专门用于从方法返回多个值

ref规则

必须在调用前初始化变量

方法内部可以读取也可以修改变量

传递的是变量的引用(内存地址)

调用时和定义时都必须使用 ref 关键字

需要修改原始变量时使用ref

需要返回多个值时使用out

static void ChangeValueRef(ref int value) { value = 3; } static void ChangeValueRef(ref int []value) { value =new int [] { 3,4,5}; } static void ChangeValue( int value) { value = 5; } static void Main(string[] args) { int a = 1; ChangeValue(a); Console.WriteLine(a);//不变 ChangeValueRef(ref a); Console.WriteLine(a);//变了
http://www.jsqmd.com/news/366628/

相关文章:

  • poll() Missing ‘window‘ in context File解决办法 blender插件开发
  • 2026 南通英语雅思培训教育机构推荐;雅思培训课程中心权威口碑榜单 - 老周说教育
  • 应用日志收集与 logrotate 切割配置
  • 大模型推理,不再是“一根筋”
  • 2026 南昌英语雅思培训教育机构推荐:雅思培训课程中心权威口碑榜单 - 老周说教育
  • 推理性能PK,华为+DeepSeek>英伟达?
  • 想让AI更智能?收藏这篇,小白也能学会调用工具的Agent智能体!
  • 2026 厦门英语雅思培训教育机构推荐:雅思培训课程中心权威口碑榜单 - 老周说教育
  • (2026年最新)AI大模型学习路线图详解:从入门到精通,你的完整学习指南!_大模型学习路线
  • 【课程设计/毕业设计】基于SpringBoot框架的食品安全服务系统基于springboot的食品安全监测及风险预警系统的设计与实现【附源码、数据库、万字文档】
  • 2026年IT圈最火话题:AI智能体与鸿蒙生态大爆发!你抓住机会了吗?
  • LLM 联网搜索,到底是咋回事?
  • 编写摄影交友APP,根据用户摄影水平,摄影类型(风景,人物,美食),匹配同城摄影爱好者,推荐摄影地点,活动,共享摄影作品,技巧,提升摄影能力。
  • 2026陕西医院标识设计行业指南:核心要素解析与Top5企业榜单 - 深度智识库
  • 2026 台州英语雅思培训教育机构推荐/雅思培训课程中心权威口碑榜单 - 老周说教育
  • 三重for循环应用
  • 实现PC与使用EtherNet/IP协议的PLC通信
  • Cirrus项目
  • 保姆级教程 | 人工智能应用开发平台 Coze
  • 2026 厦门英语雅思培训教育机构推荐,雅思培训课程中心权威口碑榜单 - 老周说教育
  • 2026 南通英语雅思培训教育机构推荐,雅思培训课程中心权威口碑榜单 - 老周说教育
  • 2026最新PE管厂家最新推荐,实力品牌深度解析采购无忧之选 - 深度智识库
  • 2026 厦门英语雅思培训教育机构推荐;雅思培训课程中心权威口碑榜单 - 老周说教育
  • 前端安全防护方案
  • 抢占洛阳本地流量新高地!专业团购代运营赋能商户全域增长 - 野榜数据排行
  • 范式重构:当编程变成“意图”——黄仁勋眼中的AI工厂与智能体未来
  • (12)GetPlayerPawn(..) 与 GetPlayerCharacter(..) 这俩函数啥区别 ?
  • 并网式+分布式全覆盖!2026光伏气象站厂家实力TOP5揭晓 - 品牌推荐大师
  • 2026 哈尔滨英语雅思培训教育机构推荐:雅思培训课程中心权威口碑榜单 - 老周说教育
  • Cirrus-be安装部署