C#的值传递与引用传递


值传递:在使用值传递时,是把变量的值传给函数,函数中对此变量的任何修改都不影响该变量本身的值。

引用传递:使用引用传递时,在函数中对此变量的修改会影响变量的值。

说简单点,值传递,就是我把身份证复印件给了你,你在上面可以写几个字也可以撕掉,但我身份证上面显示内容不会变也不会被折断;

而引用传递,就是我把身份证给了你,你在上面写字,那确实身份证上就会显示你写的内容,你把身份证折断,那就真的是断了。

来个小例子演示下,一目了然。

再看输出结果的不同:

如上显示:用值传递时,变量在函数中被修改后,变量本身没有变化;用引用传递时,变量在函数中被修改后,确实发生变化。

使用引用传递就要用到关键字:ref。用法如上,就是在定义函数和调用函数时在变量前加上关键字ref。

用ref关键字使用引用变量也有两个注意事项:

1、由于引用的变量的值会被改变,因此使用的变量必须是变量,也就是“非常量”的变量,举个例子:const int myNumber = 5;

const,英文含义:常量。被关键字const修饰的变量的值不能被改变,所以加上const会发生错误。

2、必须使用初始化过的变量。如:int myNumber = 5;可以。 如果这样定义:int myNumber;就不可以。

优质内容筛选与推荐>>
1、牛客网——棋盘游戏
2、卷积的通俗理解(转)
3、excel里求大于1号小于今天的某列的合计
4、Map Hashtable Hashmap 集合四
5、Servlet过滤器-日志记录


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号