引言
参数,也叫参变量,是一个变量。在方法签名中随处可见,实现了不同方法间对于数据的寄雁传书,基本上充斥在代码的各个角落里。
在方法签名或者原型中,方法名称后的括号包含方法的参数及其类型的完整列表。参数声明指定参数中存储的值的类型、大小和标识符。
然而小小参数的背后其实也是有着大大的学问,所以本篇博文,您可以和博主一起把C#里面各式各样的参数复习一遍。
我们先简单回顾一下各种各样的参数概念,对不同类型参数的使用场景有一个了解,再慢慢深入探讨参数的传递,内存堆栈分布,抽丝剥茧,步步为营,带着思考由浅入深的去阅读本文。
形参和实参
形参全称为“形式参数”,由于它不是实际存在变量,所以又称虚拟变量。
形参是在定义方法签名的时候使用的参数,目的是用来接收调用该方法时传递的参数(值),它的作用是实现主调方法与被调方法之间的联系。
形参只在方法内部有效,方法调用结束返回主调用方法后则不能再使用该形参变量。
形参(自身也是变量)和局部变量有所区别,且在方法内部(作用域内)不允许存在一个同名的局部变量,哪怕它们类型是相同的。
//oldValue、parameter1、optionalParam1、optionalParam2就是Change方法的形参//方法签名如果有多个形参,则多个形参用逗号隔开private static void Change<T>(T oldValue, object parameter1, object optionalParam1 = null, object optionalParam2 = null)
{
&nbs
