C#中的函数参数传递及返回值问题

C#中的函数(三)参数传递及返回值 - SmallOverFllow - 博客园 (cnblogs.com)

参数传递

分为2类

1.普通传递(形参数据类型前面没有ref或者out关键字,传递的是变量中的数据)

2.引用传递(形参数据类型前面加上ref或者out关键字,传递的是变量在栈中的地址)


1.普通传递

根据参数的数据类型分为普通传递值类型跟普通传递引用类型

普通传递值类型,传递实参后被调用函数内部对它进行修改不会影响到主调函数中的变量

因为变量是值类型,变量中的数据是数值

 对a,b修改不影响原本Main里的值

普通传递引用类型,传递实参后被调用函数内部对它进行修改会影响到主调函数中的变量

因为变量是引用类型,变量中的数据是引用地址,引用地址是对象在托管堆中的内存地址

当外部对引用类型变量进行修改时,相当于直接对托管堆中的数据进行了修改.

 形参是对象,属于引用类型,(即使没有return和接收)也会改变原有Main里的值


2.引用传递

的主要目的是对参数进行修改,然后让外部数据进行同步更新,返回多个数据的作用(refout)

 原Main里的值addNum、maxNum跟随变化

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值