函数
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
}
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
}



浙公网安备 33010602011771号