[图片]using System;
[图片]using System.Collections.Generic;
[图片]using System.Text;
[图片]
[图片]namespace RefDemo
[图片][图片][图片]{
[图片] class Program
[图片][图片] [图片]{
[图片][图片] /**//// <summary>
[图片] /// 演示值类型的Ref用法
[图片] /// </summary>
[图片] /// <param name="i"></param>
[图片] static void Method_1(ref int i)
[图片][图片] [图片]{
[图片] i = 7;
[图片] }
[图片][图片] /**//// <summary>
[图片] /// 演示引用类型的Ref用法
[图片] /// </summary>
[图片] /// <param name="str"></param>
[图片] static void Method_2(ref string str)
[图片][图片] [图片]{
[图片] str = "Bechham";
[图片] }
[图片]
[图片] static void Method_3(int i)
[图片][图片] [图片]{
[图片] i = 7;
[图片] }
[图片]
[图片] static void Method_4(string str)
[图片][图片] [图片]{
[图片] str = "Bechham";
[图片] }
[图片]
[图片][图片] /**//// <summary>
[图片] /// 演示数组的Ref用法
[图片] /// </summary>
[图片] /// <param name="arr"></param>
[图片] static void Method_5(int[] arr)
[图片][图片] [图片]{
[图片] for (int i = 0; i < arr.Length; i++)
[图片] arr[i] = 0;
[图片] }
[图片][图片] /**//// <summary>
[图片] /// 演示数组的Ref用法
[图片] /// </summary>
[图片] /// <param name="arr"></param>
[图片] static void Method_6(string[] arr)
[图片][图片] [图片]{
[图片] for (int i = 0; i < arr.Length; i++)
[图片] arr[i] = "Catherine";
[图片] }
[图片]
[图片][图片] /**//// <summary>
[图片] /// 演示值类型的Out用法
[图片] /// </summary>
[图片] /// <param name="i"></param>
[图片] static void Method_7(out int i)
[图片][图片] [图片]{
[图片] i = 7;
[图片] }
[图片][图片] /**//// <summary>
[图片] /// 演示引用类型的Out用法
[图片] /// </summary>
[图片] /// <param name="str"></param>
[图片] static void Method_8(out string str)
[图片][图片] [图片]{
[图片] str = "Bechham";
[图片] }
[图片]
[图片] static void Main(string[] args)
[图片][图片] [图片]{
[图片] int val_1 = 22; // 使用Ref,需要初始化
[图片] Method_1(ref val_1);
[图片]
[图片] string str_2 = "Kaka"; // 使用Ref,需要初始化
[图片] Method_2(ref str_2);
[图片]
[图片] Console.WriteLine("Number:{0},Name:{1}", val_1, str_2);
[图片]
[图片] Console.WriteLine("------------------------------");
[图片]
[图片] int val_3 = 10;
[图片] Method_3(val_3); // 值改变
[图片]
[图片] string str_4 = "Zidane";
[图片] Method_4(str_4); // 值改变
[图片]
[图片] Console.WriteLine("Number:{0},Name:{1}", val_3, str_4);
[图片]
[图片] Console.WriteLine("------------------------------");
[图片]
[图片][图片] int[] arr_5 =
[图片]{ 1, 2, 3, 4, 5};
[图片]
[图片] for (int i = 0; i < arr_5.Length; i++)
[图片] Console.WriteLine("Array(" + i + "):" + arr_5[i].ToString());
[图片]
[图片] Method_5(arr_5); // 这里没有使用REF 参数.
[图片]
[图片] for (int i = 0; i < arr_5.Length; i++)
[图片] Console.WriteLine("Array(" + i + "):" + arr_5[i].ToString());
[图片]
[图片] Console.WriteLine("------------------------------");
[图片]
[图片][图片] string[] arr_6 =
[图片]{ "ktgu", "lee", "lion"};
[图片]
[图片] for (int i = 0; i < arr_6.Length; i++)
[图片] Console.WriteLine("Array(" + i + "):" + arr_6[i].ToString());
[图片]
[图片] Method_6(arr_6); // 这里没有使用REF 参数.
[图片]
[图片] for (int i = 0; i < arr_6.Length; i++)
[图片] Console.WriteLine("Array(" + i + "):" + arr_6[i].ToString());
[图片]
[图片] Console.WriteLine("------------------------------");
[图片]
[图片] int val_7; // 使用Out,不需要初始化
[图片] Method_7(out val_7);
[图片]
[图片] string str_8; // 使用Out,不需要初始化
[图片] Method_8(out str_8);
[图片]
[图片] Console.WriteLine("Number:{0},Name:{1}", val_7, str_8);
[图片]
[图片] Console.ReadLine();
[图片] }
[图片] }
[图片]}