ref 和out的区别【鸡蛋】

来源:互联网 发布:动机心理学 知乎 编辑:程序博客网 时间:2024/05/01 17:08

在定义方法时,如果我们想要该方法有返回值,必须将其定义为有返回值得方法,在方法执行结束时return值出去,这种方式返回值每次只能返回一个对象或者是具有相同类型的一组对象(数组,arraylist,list<>);但如果我们想要返回多个不同类型的参数,例如 int i,string b 该方式就很难满足需要!实现起来也会很麻烦。

ref、 out为我们解决了这个问题.我们可以将方法的参数定义为ref或者out,从而使方法参数达到一种传递的目的!我们可以在方法体中对该类型的参数赋值,在调用时,重新赋过值参数可以被传递出来使用;

ref和out的不同在于,使用ref型参数时,在方法调用端(即使用方法前)必须对参数进行初始化!不能传递空值给该参数。out型参数,则是在方法体内初始化的,即便你在调用段赋了值,它也会被清空在方法体内重新初始化!

说简单点就是:ref  即输入(初始化),又输出   &&  out 只输出(即便输入也被无视);使用前ref需要对

原创粉丝点击