Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >C#函数多个返回值,除了out ref还有什么做法?

C#函数多个返回值,除了out ref还有什么做法?

提问于 2017-12-01 02:41:29
回答 1关注 0查看 392

RT

回答 1

帅的惊动我国

发布于 2017-12-01 05:52:57

对于引用类型,完全可以不用这个修饰,比如

class A

{

public int a;

public int b;

}

main()

{

A a = new A();

foo(a);

int x = a.a;

int y = a.b;

}

void foo(A a)

{

a.a = 1;

a.b = 2;

}

和开发者交流更多问题细节吧,去 写回答
相关文章
C# ref与out
ref参数是引用,out参数为输出参数。 我写一个控制台的程序来说明一下两者的特点和区别: 1 class Program 2 { 3   public static void RefMethod( ref int i) //参数使用了ref关键字 4   { 5     i++; 6   } 7   public static void OutMethod(out int i) //参数使用了out关键字 8   { 9     i = 0; //out参数规定,参数在方法体内必须被初始
拾点阳光
2018/05/10
8880
C# ref,params,out 修饰符
out 和ref 相反,调用方法参数被out修饰的方法时,被out修饰的参数变量,在声明后可以不用赋值,但是在方法体内必须赋值,使用方法如下:
多凡
2020/06/16
3850
C#中ref和out用法简介
ref是传递参数的地址,out是返回值,两者有一定的相同之处,不过也有不同点。   使用ref前必须对变量赋值,out不用。   out的函数会清空变量,即使变量已经赋值也不行,退出函数时所有out引用的变量都要赋值,ref引用的可以修改,也可以不修改。   区别可以参看下面的代码应该就明白了:
zls365
2021/12/06
1.3K0
ref与out
其次:ref可以把参数的数值传递进函数,但是out是要把参数清空,就是说你无法把一个数值从out传递进去的,out进去后,参数的数值为空,所以你必须初始化一次。这个就是两个的区别.
wfaceboss
2019/04/08
7680
C# ref与out关键字解析
简介:ref和out是C#开发中经常使用的关键字,所以作为一个.NET开发,必须知道如何使用这两个关键字. 1、相同点 ref和out都是按地址传递,使用后都将改变原来参数的数值。 2、ref关键字 (1)、使用ref关键字的注意点: i、方法定义和调用方法都必须显式使用 ref 关键字 ii、传递到 ref 参数的参数必须初始化,否则程序会报错 iii、通过ref的这个特性,一定程度上解决了C#中的函数只能有一个返回值的问题 (2)、代码示例: using System; using System.Col
郑小超.
2018/01/26
5730
C# 中的 Out 和 Ref 及Params 参数
out 和ref 参数 经常用来通过方法传递参数来获取值,当您的方法不只有一个返回值的时候,这两个参数就发挥作用了。ref是传递参数的地址,out是返回值,两者有一定的相同之处,不过也有不同点。  在这篇文章里,我将解释如何在c#应用中使用这两个参数。   1、out 参数   out 方法参数关键字使方法引用传递到方法的同一个变量。当控制传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中。   public class mathClass { public static int TestOu
跟着阿笨一起玩NET
2018/09/18
1.2K0
ref和out的区别在c#中 总结
 ref 关键字使参数按引用传递。其效果是,当控制权传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中。简单点说就是,使用了ref和out的效果就几乎和C中使用了指针变量一样。它能够让你直接对原数进行操作,而不是对那个原数的Copy进行操作。 还是以例子来说明吧; 1. ref: int i =0; 有函数fun(ref i)和fun(i) 它们的函数体都是{ i = 3;},那么在执行以下两段代码后: (1)int i = 0; fun(i); System.Console.WriteLi
小小许
2018/09/20
4340
C#中ref和out的区别使用
ref 关键字会导致参数通过引用传递,而不是通过值传递。 通过引用传递的效果是,对所调用方法中的参数进行的任何更改都反映在调用方法中。 例如,如果调用方传递本地变量表达式或数组元素访问表达式,所调用方法会将对象替换为 ref 参数引用的对象,然后调用方的本地变量或数组元素将开始引用新对象。
vv彭
2020/10/27
1.2K0
函数的多个返回值
def func1(): # return 值1,值2 --- return有一个作用是打断程序的运行 return 1 + 1 , 2 + 2, 3+4 num1,num2,num3 = func1() print(func1()) print(num1) print(num2) print(num3)
汪凡
2018/05/29
5.8K0
ref 和 out 的区别
ref和out都是C#中的关键字,所实现的功能也差不多,都是指定一个参数按照引用传递。对于编译后的程序而言,它们之间没有任何区别,也就是说它们只有语法区别。
kdyonly
2023/03/03
4300
c#基础系列3---深入理解ref 和out
在上篇文章深入理解值类型和引用类型的时候,有的小伙伴就推荐说一说ref和out 关键字,昨天晚上彻夜难眠在想是否要谈一下呢,因为可谈的不是太多,也可能是我理解的不够深刻。
架构师修行之路
2019/07/23
1.5K0
在C#中ref和out具体怎么使用?在什么情况下使用?
ref是传递参数的地址,out是返回值,两者有一定的相同之处,不过也有不同点。   使用ref前必须对变量赋值,out不用。   out的函数会清空变量,即使变量已经赋值也不行,退出函数时所有out引用的变量都要赋值,ref引用的可以修改,也可以不修改。   区别可以参看下面的代码应该就明白了:
zls365
2020/08/19
2.9K0
C# – ref
The ref keyword causes an argument to be passed by reference, not by value. The effect of passing by reference is that any change to the parameter in the called method is reflected in the calling method. For example, if the caller passes a local variable expression or an array element access expression, and the called method replaces the object to which the ref parameter refers, then the caller’s local variable or the array element now refer to the new object.
全栈程序员站长
2022/07/07
4590
如何使用out、ref和parms?
【摘要】C#中有三个高级参数,分别是out,ref,params, 你会用吗?
高一峰
2020/09/22
1K0
如何使用out、ref和parms?
【Python】函数 ③ ( 函数返回值定义语法 | 函数返回多个返回值 | 代码示例 )
在 Python 函数中 , 通过 return 关键字 , 可以返回一个结果给调用者 , 这个返回结果就是 函数返回值 ;
韩曙亮
2023/10/11
8600
【Python】函数 ③ ( 函数返回值定义语法 | 函数返回多个返回值 | 代码示例 )
C#基础知识 之 ✨ ref 和 out 之间的江湖趣闻
按照国际惯例,要了解一个东西的时候,首先明白它是什么,然后明白它能做什么,最后要知道为什么。 所以在介绍ref和out之前要先简单了解一下什么是引用参数与输出参数,因为使用ref和out要有所了解
呆呆敲代码的小Y
2021/08/12
2.4K0
编程语言函数多返回值处理方式排名
一个函数一个返回值 , 这好像跟祖宗定下的规则似的,各个时代主流编程语言几乎都严格遵守着。然而, 在实际情况下, 程序员写代码经常会碰到一个函数会返回多个返回值这种需求, 比如说一个带分页功能的函数 ,需要要返回数据列表和总记录数两个值; 一个http请求函数需要返回状态码和响应内容两个值。这样的情况比比皆是。 面对这种需求,每一种语言都有自己的一套应对方法。 下面我们来对各主流语言实现方法的好坏来进行一下排名。 第一名:golang golang的函数天生就支持多返回值这个特性, 一个函数可以返回任意数量
用户1608022
2018/04/11
2K0
编程语言函数多返回值处理方式排名
.net里的ref、out、params参数。
1、ref參數     class Program     {         static void Main(string[] args)         {             int a = 10;             int b = 5;             ChangeNumValue(ref a, ref b);             Console.WriteLine(a + " " + b);             Console.ReadKey();         }
指尖改变世界
2018/08/31
7690
【说站】python函数返回多个返回值
python函数返回多个返回值 一般情况下,函数只有一个返回值,但Python也支持函数返回多个返回值。 1、为了返回多个返回值,只需在return关键字后跟多个值(依次用逗号分隔)。 def date():     import datetime     d = datetime.date.today()     return d.year, d.month, d.day 2、事实上,当返回值增加时,Python将返回值包装成元组,然后返回元组。 >>> date() (2019, 9, 4) 以上
很酷的站长
2022/11/24
2.9K0
【说站】python函数返回多个返回值
除了 filter 还有什么置灰网站的方式?
当然,通常而言,全站置灰是非常简单的事情,大部分前端同学都知道,仅仅需要使用一行 CSS,就能实现全站置灰的方式。
@超人
2023/05/12
8650
除了 filter 还有什么置灰网站的方式?

相似问题

.NET中ref和out参数的区别?

2368

福建个人网站备案是,核验单除了签名还有什么要求?

1192

window桌面端推流除了OBS还有其他工具吗?

21.4K

除了允许变量被const函数修改以外,'mutable'关键字还有其他用途吗?

2240

CDB除了下载备份文件,还能下载MySQL相关的其他什么?还有回档能回档到多久以前?

1322
相关问答用户
腾讯云TDP | TDP会员擅长3个领域
平安资管 | 架构师擅长4个领域
到家集团 | 技术VP擅长5个领域
擅长3个领域
擅长5个领域
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档