问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

概括一下ref和out的各自特点,区别。

发布网友 发布时间:2022-04-21 19:24

我来回答

5个回答

热心网友 时间:2023-09-21 17:57

首先:两者都是按地址传递的,使用后都将改变原来参数的数值。

其次:ref可以把参数的数值传递进函数,但是out是要把参数清空,就是说你无法把一个数值从out传递进去的,out进去后,参数的数值为空,所以你必须初始化一次。这个就是两个的区别,或者说就像有的网友说的,ref是有进有出,out是只出不进。

ref和out的区别在C# 中,既可以通过值也可以通过引用传递参数。通过引用传递参数允许函数成员更改参数的值,并保持该更改。若要通过引用传递参数, 可使用ref或out关键字。ref和out这两个关键字都能够提供相似的功效,其作用也很像C中的指针变量。它们的区别是:

1、使用ref型参数时,传入的参数必须先被初始化。对out而言,必须在方法中对其完成初始化。

2、使用ref和out时,在方法的参数和执行方法时,都要加Ref或Out关键字。以满足匹配。

3、out适合用在需要retrun多个返回值的地方,而ref则用在需要被调用的方法修改调用者的引用的时候。

方法参数上的 out 方法参数关键字使方法引用传递到方法的同一个变量。当控制传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中。

当希望方法返回多个值时,声明 out 方法非常有用。使用 out 参数的方法仍然可以返回一个值。一个方法可以有一个以上的 out 参数。

若要使用 out 参数,必须将参数作为 out 参数显式传递到方法。out 参数的值不会传递到 out 参数。

不必初始化作为 out 参数传递的变量。然而,必须在方法返回之前为 out 参数赋值。

属性不是变量,不能作为 out 参数传递。

扩展资料

当希望方法返回多个值时,声明 out方法很有用。使用 out参数的方法仍然可以将变量用作返回类型(请参见 return),但它还可以将一个或多个对象作为 out参数返回给调用方法。此示例使用 out在一个方法调用中返回三个变量。请注意,第三个参数所赋的值为 Null。这样便允许方法有选择地返回值。

ref是net的关键字,ref关键字--让参数按照引用传递。其效果是,当控制权传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中;也等同将值类型的数据使用引用方式传参。若要使用ref参数,则方法定义和调用方法都必须显式使用ref关键字。ref是 Reference的缩写。

参考资料:百度百科 REF  百度百科 out

热心网友 时间:2023-09-21 17:57

两者词性不同,释义也不同
ref是名词中文释义裁判员,out可做副词可做动词
英: [ref]美: [rɛf]n.裁判员;
例句:

The ref is placing the ball for a free kick to the visiting team.
裁判员正在安排让客队罚任意球。

out  英: [aʊt]美: [aʊt]

adv.出局; 在外,在外部; 完全,彻底; 出版;
prep.(表示来源)从; (从…里)出来; (表示不在原状态)脱离; 离去;

例句:

Two of his biggest competitors are out of the ball game.
他的两大劲敌出局了。
复数:outs

热心网友 时间:2023-09-21 17:58

out与ref区别:

1、使用ref型参数时,传入的参数必须先被初始化,对out而言,必须在方法中对其完成初始化。

2、使用ref和out时,在方法的参数和执行方法时,都要加Ref或Out关键字,以满足匹配。

3、out适合用在需要retrun多个返回值的地方,而ref则用在需要被调用的方法修改调用者的引用的时候。

4、ref传进去的参数在函数内部可以直接使用,而out不可。

5、系统对ref的*是更少一些的。

6、若要使用 ref 参数,必须将参数作为 ref 参数显式传递到方法,ref 参数的值被传递到 ref 参数。


7、当希望方法返回多个值时,声明 out 方法非常有用;使用 out 参数的方法仍然可以返回一个值。

扩展资料

ref和out语法区别:

1、ref传进去的参数必须在调用前初始化,out不必。

即:
int i;SomeMethod( ref i );//语法错误

SomeMethod( out i );//通过

2、ref传进去的参数在函数内部可以直接使用。

而out不可:

public void SomeMethod(ref int i)

{int j=i;//通过//...}

public void SomeMethod(out int i)

{int j=i;//语法错误}

参考资料:百度百科-c#

热心网友 时间:2023-09-21 17:58

out与ref区别:

1、使用ref型参数时,传入的参数必须先被初始化,对out而言,必须在方法中对其完成初始化。

2、使用ref和out时,在方法的参数和执行方法时,都要加Ref或Out关键字,以满足匹配。

3、out适合用在需要retrun多个返回值的地方,而ref则用在需要被调用的方法修改调用者的引用的时候。

4、ref传进去的参数在函数内部可以直接使用,而out不可。

5、系统对ref的*是更少一些的。

6、若要使用 ref 参数,必须将参数作为 ref 参数显式传递到方法,ref 参数的值被传递到 ref 参数。

7、当希望方法返回多个值时,声明 out 方法非常有用;使用 out 参数的方法仍然可以返回一个值。

扩展资料:

out:标识一个参数值会受影响的参数,但在传入方法时,该参数无需先初始化。

ref:标识一个参数值可能会受影响的参数。

C#旨在设计成为一种“简单、现代、通用”,以及面向对象的程序设计语言,此种语言的实现,应提供对于以下软件工程要素的支持:强类型检查、数组维度检查、未初始化的变量引用检测、自动垃圾收集(Garbage Collection,指一种自动内存释放技术)。软件必须做到强大、持久,并具有较强的编程生产力。此种语言为在分布式环境中的开发提供适用的组件开发应用。

为使程序员容易迁移到这种语言,源代码的可移植性十分重要,尤其是对于那些已熟悉C和C++的程序员而言。对国际化的支持非常重要。C#适合为独立和嵌入式的系统编写程序,从使用复杂操作系统的大型系统到特定应用的小型系统均适用。

参考资料:百度百科-C#

热心网友 时间:2023-09-21 17:59

一、两者词性不同

ref是名词中;out可做副词,可做动词

二、释义也不同

ref 英 [ref]     美 [ref]    n. 裁判员

out 英 [aʊt]    美 [aʊt]    adv. 出;在外;完;prep. 向外;在外面;v. 出来;暴露;驱逐;熄灭;伸出;公开…的*身份

三、用法不同

out 用作副词(adv.)

His book came out last month.

他的书上个月出版了。

2.He took out a book from the case.

他从箱子里拿出一本书。

用作名词(n.)

The game's not over till the ref blows the whistle.

裁判吹响哨子,比赛才算结束。

2.If I had been the ref I wouldn't have given a penalty then.

如果我是裁判,那时候就不会罚犯规。

扩展资料:

英语词性

prep. = 介系词(介词);前置词,preposition的缩写

pron .= 代名词(代词),pronoun的缩写

n .= 名词,noun的缩写

v. = 动词,兼指及物动词和不及物动词,verb的缩写

conj. = 连接词 ,conjunction的缩写

s = 主词(主语)

sc = 主词补语(有两种说法,一种表示主语补语=表语,一种表示一般表语属于主语补语)

o = 受词 (宾语)

oc = 受词补语(宾语补足语)

vi. = 不及物动词,intransitive verb的缩写

vt. = 及物动词,transitive verb的缩写

aux.v = 助动词 ,auxiliary的缩写

adj. = 形容词,adjective的缩写

adv. =副词,adverb的缩写

art. = 冠词,article的缩写

num. = 数词,numeral的缩写

int. = 感叹词,interjection的缩写

u. = 不可数名词,uncountable noun的缩写

c. = 可数名词,countable noun的缩写

pl. = 复数,plural的缩写

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
富士打印机怎么设置ip地址? 超市购物模拟器收银员 微信好友辅助安全登录验证该怎么做 培育钻石和天然钻石本质上有区别吗 培育钻石有哪些优缺点? 买的基金怎么取出来吗? 如何把鸡毛去掉 他先对女孩有好感,女孩对他表白了,但是他一直这样对待女孩?_百度... 主保护包括哪些 经常带孩子散步有哪些好处和坏处? 运动前1分钟心跳大约是多少 out 与ref区别 华硕v505l拆机教程视频 正常人运动前一分钟心跳大约是跳多少下呢?呼吸约... C#中关键字ref和out的区别 C语言中out和ref的区别是什么? 华硕笔记V505L本如何拆后盖换固态硬盘? 自驾游的话,凤凰当地有比较保险且安全的停车场吗 打算过几天去凤凰古城,怎么去方便安全.看了网上那种 2012凤凰古城旅游安全吗?网上说那边治安不是很好... 凤凰古城现在可以去了吗? 关于凤凰古城旅游,还有安全问题怎样? 大哥,问一下去凤凰古城坐车走山路危险不?我们8月... 现在凤凰古城的安全问题 两个女生近期去凤凰古城玩,安全吗?现在是不是旺... 现在去凤凰古城,需要注意些什么事? 从吉首去凤凰安全吗?? 凤凰古城安不安全,2人自助游5天大概要多少钱? 八月份准备去凤凰古城旅游,听说那边有点乱是不是... 一个人去凤凰古城安全吗 华硕笔记本的后盖怎样打开,好清灰 运动前一分钟心跳约多少下呼吸约多少次 C#中out和ref之间的区别 想给我的笔记本电脑除尘,后盖还是拆不下来,这怎... 男孩运动前一分钟心跳约多少下,呼吸约多少次.跑50... ref和out的区别在c#中 总结 运动前1分钟心跳多少下呼吸多少次 华硕笔记本电脑,自己可以把后盖打开吗? c# ref和out区别仅仅是参数需不需要初始化? 运动前,1分钟心跳约多少下,呼吸约多少次 C#中的out和ref有什么区别 运动前1分钟心跳约多少下 ref和out的区别? 运动前,1分钟心跳多少下,呼吸多少下? ref和out的区别在c#中? 运动前1分钟心跳多少下,呼吸多少次 三年级数学题,运动前,1分钟心跳约多少下,呼吸约多少次 在C#中 ref和out的区别 运动前,一分钟,人的心跳约几下呼吸约几次跳绳80... C# ref参数和out参数是什么?