如何在 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

相关文章