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

in, out, ref

C#中的函数传递方式可以为in、out、ref(引用)

in方式的是默认的传递方式,即向函数内部传送值,不作讲解

 

很多语言都有类似的操作从函数向调用者返回值,这样我们可以通过函数的调用返回多个值,因为函数只能有一个return返回值方式,当我们需要返回多个值时,可以参用out或者ref

 

out和ref方式都可以返回值给调用者,但是两者存在一定的区别:

 

ref传递给函数的是参数的地址,而out用来从函数向调用者返回值(与in做相反的操作)。

 

out参数在传递前不需要进行赋值,因为即使赋值也被清空,out参数在传递前都要被清空,所以在函数内部必须要对out参数进行赋值,否则出错

 

ref参数在传递前必须要进赋值,这个很容易理解,因为ref传递的是参数的地址,但是在函数的内部并不必须要对ref参数进行赋值,也就是说,ref引用的可以被修改,也可以不被修改

 

总结:

  •   1.两者都是按地址传递的,使用后都将改变原来的数值。
  •   2.rel可以把参数的数值传递进函数,但是out是要把参数清空
  •   3.rel是有进有出,out是只出不进

转载于:https://www.cnblogs.com/tech-bird/p/3648444.html

相关文章:

  • 以太坊 ERC223 标准与 ERC20 的区别是什么?
  • 7、请求参数接收
  • iPhone的指纹识别与面部识别(FaceID)
  • 状态模式与外观模式的碰撞
  • 【hdoj】1358 Period【字符串--最小循环节 i/next[i]即为其长度】
  • Cracking The Coding Interview 3.6
  • 爬虫原理与数据抓取----- urllib2:GET请求和POST请求
  • 算法导论读书笔记(2)
  • Java中的基本类型和包装类
  • 用jquery-easyui中的combotree实现树形结构的选择
  • Oracle推出轻量级Java微服务框架Helidon
  • Postgres和MySQL创建用户并授予db权限
  • 自定义JSP标签库及Properties使用
  • Kubernetes - 集群内容器访问集群外服务
  • 同步和异步的区别
  • [译] 理解数组在 PHP 内部的实现(给PHP开发者的PHP源码-第四部分)
  • ES6核心特性
  • HTML中设置input等文本框为不可操作
  • input的行数自动增减
  • jQuery(一)
  • JS创建对象模式及其对象原型链探究(一):Object模式
  • Lucene解析 - 基本概念
  • mysql 5.6 原生Online DDL解析
  • MySQL-事务管理(基础)
  • Mysql优化
  • PHP 的 SAPI 是个什么东西
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 对象引论
  • 关于List、List?、ListObject的区别
  • 聊聊springcloud的EurekaClientAutoConfiguration
  • 使用SAX解析XML
  • 腾讯大梁:DevOps最后一棒,有效构建海量运营的持续反馈能力
  • 新版博客前端前瞻
  • ​业务双活的数据切换思路设计(下)
  • # Java NIO(一)FileChannel
  • #HarmonyOS:基础语法
  • #LLM入门|Prompt#1.7_文本拓展_Expanding
  • #NOIP 2014#Day.2 T3 解方程
  • #pragma multi_compile #pragma shader_feature
  • (C语言)输入一个序列,判断是否为奇偶交叉数
  • (论文阅读31/100)Stacked hourglass networks for human pose estimation
  • (南京观海微电子)——COF介绍
  • (淘宝无限适配)手机端rem布局详解(转载非原创)
  • (转)C#开发微信门户及应用(1)--开始使用微信接口
  • (转)IIS6 ASP 0251超过响应缓冲区限制错误的解决方法
  • .bat批处理(七):PC端从手机内复制文件到本地
  • .NET Core Web APi类库如何内嵌运行?
  • .NET 中的轻量级线程安全
  • .netcore 如何获取系统中所有session_如何把百度推广中获取的线索(基木鱼,电话,百度商桥等)同步到企业微信或者企业CRM等企业营销系统中...
  • .vimrc php,修改home目录下的.vimrc文件,vim配置php高亮显示
  • @hook扩展分析
  • @开发者,一文搞懂什么是 C# 计时器!
  • [BZOJ4016][FJOI2014]最短路径树问题
  • [C\C++]读入优化【技巧】
  • [CTF]php is_numeric绕过