参数类型主要包括两种
一、值类型
在使用值类型参数时,是把一个值传递给函数使用的一个变量。对函数中此变量的任何修改都不影响函数调用中指定的参数
二、引用类型
可以影响参数,引用类型的作用还是比较大。会在以后的实战项目中经常碰到,暂不多说,下面只给一个关于引用类型的例子
其中ref和out的区别在于out在主函数中不需赋值,ref一定要赋值
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static int IntTest(int i) { i *= 2; return i; } static void RefTest(ref int i) { i = 1; i = i * 2; Console.WriteLine("{0}", i); } static int MaxArray(int[] array ,out int index) { int max=array[0]; index=0; for (int i = 0; i<array.Length; i++) { if (max < array[i]) max = array[i]; index = i; } return max; } static void Main(string[] args) { #region//ref测试 int m= 1;//不用加ref在此必须给m赋值 Console.WriteLine("{0}", m); RefTest(ref m);//在此注意要添加ref Console.WriteLine("{0}", m); #endregion #region//int测试 int n = 1; Console.WriteLine("{0}", n); Console.WriteLine("{0}", IntTest(n)); Console.WriteLine("{0}", n); #endregion #region//out测试 int[] arry = { 1,2,3,4,5,6,7,7,7,7}; int index;//在此无须给index赋值,注意与ref的比较 Console.WriteLine("{0}", MaxArray(arry, out index)); Console.WriteLine("{0}", index);// #endregion Console.ReadKey(); } } }
最终的值为12212179(为节省空间,就这样写了)