1

1、使用参数数组
2

static int SumVals(params int[] vals)
3
{
4
int sum=0;
5
foreach (int val in vals)
6
{
7
sum +=val;
8
}
9
return sum;
10
}
11

12

static void Main(string[] args)
13
14
int sum=SumVals(1,5,2,9,8);
15
Console.WriteLine("Summed Values={0}",sum);
16
Console.Readkey();
17
18

19

20

2、引用参数和值参数
21

22

static int Double(ref int val)
23
24
val *=2;
25
return val;
26
27

28

int val=0;
29

int DoubleVal=Double(ref val);
30

31

使用ref参数的变量有两个限制:
32

1、不能是常量 const int val;
33

2、必须使用初始化过的变量 int val;
34

35

输出参数out与ref的区别
36

1、未赋值的变量作为ref的参数是非法的,但可作为out的参数
37

2、使用out参数时,该参数必须在函数中赋值,调用代码的变量值会更新;
38
int[] myArray={1,8,3,6,2,5,9,3,0,2};
39

int maxIndex;
40

Console.WriteLine(MaxValue(myArray,out maxIndex));
41

Console.WriteLine(maxIndex);
42

43

Console.ReadKey();
44

45

private static int MaxValue(int[] intArray, out int maxIndex)
46
{
47
int maxVal = intArray[0];
48
maxIndex = 0;
49
for (int i = 1; i < intArray.Length; i++)
50
{
51
if (intArray[i] > maxVal)
52
{
53
maxVal = intArray[i];
54
maxIndex = i + 1;
55
}
56
}
57
return maxVal;
58
}
本文转自tiasys博客园博客,原文链接:http://www.cnblogs.com/tiasys/archive/2006/12/27/605235.html,如需转载请自行联系原作者