如何在 C# 方法中按值传递参数?
csharpprogrammingserver side programming
这是向方法传递参数的默认机制。在此机制中,调用方法时,将为每个值参数创建一个新的存储位置。
实际参数的值被复制到其中。因此,方法内部对参数所做的更改不会影响参数。以下是按值传递参数的代码。
示例
using System; namespace CalculatorApplication { class NumberManipulator { public void swap(int x, int y) { int temp; temp = x; /* 保存 x 的值 */ x = y; /* 将 y 放入 x */ y = temp; /* 将 temp 放入 y */ } static void Main(string[] args) { NumberManipulator n = new NumberManipulator(); /* 局部变量定义 */ int a = 100; int b = 200; Console.WriteLine("交换前,a 的值:{0}", a); Console.WriteLine("交换前,b 的值:{0}", b); /* 调用函数来交换值 */ n.swap(a, b); Console.WriteLine("交换后,a 的值:{0}", a); Console.WriteLine("交换后,b 的值:{0}", b); Console.ReadLine(); } } }
输出
交换前,a 的值:100 交换前,b 的值:200 交换后,a 的值:100 交换后,b 的值:200