C#中的函数(三)参数传递及返回值 - SmallOverFllow - 博客园 (cnblogs.com)
参数传递
分为2类
1.普通传递(形参数据类型前面没有ref或者out关键字,传递的是变量中的数据)
2.引用传递(形参数据类型前面加上ref或者out关键字,传递的是变量在栈中的地址)
1.普通传递
根据参数的数据类型分为普通传递值类型跟普通传递引用类型
普通传递值类型,传递实参后被调用函数内部对它进行修改不会影响到主调函数中的变量
因为变量是值类型,变量中的数据是数值
对a,b修改不影响原本Main里的值
普通传递引用类型,传递实参后被调用函数内部对它进行修改会影响到主调函数中的变量
因为变量是引用类型,变量中的数据是引用地址,引用地址是对象在托管堆中的内存地址
当外部对引用类型变量进行修改时,相当于直接对托管堆中的数据进行了修改.
形参是对象,属于引用类型,(即使没有return和接收)也会改变原有Main里的值
2.引用传递
的主要目的是对参数进行修改,然后让外部数据进行同步更新,返回多个数据的作用(ref、out)
原Main里的值addNum、maxNum跟随变化