前一段时间老用ref与out 感觉他们的效果差不多,就去网上查了一下他们的区别,网上说的概念性的东西太多了,后来通过自己的摸索发现他们有一个规律

ref: 在引用方法之外必须赋初值

static void TestRefAndRef(){string s1="test";TestRef(ref s1);}static void TestRef(ref string str){Console.WriteLine(str);}

out:在引用方法内必须赋初值

  static void TestRefAndOut(){string s1;TestOut(out s1);}static void TestOut(out string str){str = "test";Console.WriteLine(str);}

转载于:https://www.cnblogs.com/guozhe/p/3166384.html

ref与out的区别相关推荐

  1. ref和out的区别

    ref和out的区别在C# 中,既可以通过值也可以通过引用传递参数.通过引用传递参数允许函数成员更改参数的值,并保持该更改.若要通过引用传递参数, 可使用ref或out关键字.ref和out这两个关键 ...

  2. C#中关键字ref与out的区别(转)

    C#中关键字ref与out的区别(转) 在C#中,ref与out是很特殊的两个关键字.使用它们,可以使参数按照引用来传递. 总的来说,通常我们向方法中传递的是值.方法获得的是这些值的一个拷贝,然后使用 ...

  3. C# 中 ref 和out 的区别

    out 参数前必须先为其赋值,即必须由被调用方为其赋值. class TestOut {static void FillArray(out int[] arr){// Initialize the a ...

  4. vue3 - ref和reactive的区别

    文章搬运自wx60d4764eb475e 的vue3中ref和reactive的区别(系列六) 1. ref和reactive区别:     如果在template里使用的是ref类型的数据, 那么V ...

  5. c#中ref和out的区别

    c#中ref和out的区别: 1,ref必须初始化,out不用初始化. 2,ref参数的值被传递到ref参数,out不能被传递. 注意: 1,属性不是变量,不能作为ref参数传递. 2,ref类似于c ...

  6. 【ref 和 reactive的区别】

    ref 和 reactive的区别 两者概念 ref函数:定义一个响应式的数据(主要针对基础类型数据) 方法:引入 ref 函数,const xxx = ref(initValue) 模板中读取数据: ...

  7. C#中的Params、ref、out的区别

    C# Params params params 关键字可以指定在参数数目可变处采用参数的方法参数. 在方法声明中的 params 关键字之后不允许任何其他参数,并且在方法声明中只允许一个 params ...

  8. .net程序员的盲点(一):参数修饰符ref,out ,params的区别

    C#中有三个关键字-ref,out ,params,虽然本人不喜欢这三个关键字,因为它们疑似破坏面向对象特性.但是既然m$把融入在c#体系中,那么我们就来认识一下参数修饰符ref,out ,param ...

  9. 参数修饰符ref,out ,params的区别

    C#中有三个关键字-ref,out ,params,虽然本人不喜欢这三个关键字,因为它们疑似破坏面向对象特性.但是既然m$把融入在c#体系中,那么我们就来认识一下参数修饰符ref,out ,param ...

最新文章

  1. PHP学习笔记-字符串操作2
  2. 【MFC】在工具栏中添加编辑框
  3. python开发工具下所有软件都打不开_Python 开发工具链全解
  4. html5 页面答题算分,JavaScript实现答题评分功能页面
  5. 步步为营VS 2008 + .NET 3.5(2) - VS 2008新特性之JavaScript Intellisense and Debugging
  6. WinForm模拟单击按钮两种方法
  7. 定制问卷|表单收集系统-对接特殊接口(表单系统)
  8. 学习自旋电子学的笔记02:OOMMF的报错和部分功能详述
  9. 【老生谈算法】matlab特定人语音识别算法——语音识别算法
  10. Java IO与NIO的区别
  11. Word公式自动编号
  12. LeetCode——5731. 座位预约管理系统(Seat Reservation Manager)[中等]——分析及代码(Java)
  13. 轮播一页显示多少条数据
  14. 被称为世上最经典的25句话
  15. 微信运营必备!专业的微信粉丝和社群管理工具!功能强大好用,而且免费!
  16. Web前端 学习笔记6(浮动)
  17. java xlsx转html
  18. 压力测试工具-ab工具
  19. 手把手教你实战开发黑白棋实时对战游戏
  20. 短视频平台搭建图片压缩

热门文章

  1. php的方向,PHP面试方向
  2. webpack打开项目命令_webpack前端模块打包工具基本使用的详细记录(一)
  3. 惠普硬盘安装linux,hp台式电脑原本是linux系统,如何安装win7系统
  4. mysql www.school.com_MySQL 基础学习
  5. MySQL面试题 | 附答案解析(二)
  6. 机器学习四剑客3——Pandas
  7. GVINS:基于GNSS视觉惯性紧耦合的平滑状态估计方法
  8. Open3d学习计划—高级篇 7(颜色映射)
  9. 数据库jdbc property文件配置信息片段
  10. DOM+XPath提取规则注记!