c#学习体会:使用 ref 和 out 传递数组
生活随笔
收集整理的這篇文章主要介紹了
c#学习体会:使用 ref 和 out 传递数组
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
c#學習體會:使用 ref 和 out 傳遞數組(downmoon),希望與大家分享1、與
所有的 out 參數一樣,在使用數組類型的 out 參數前必須先為其賦值,即必須由接受方為其賦值.
例如:
} 2、與所有的 ref 參數一樣,數組類型的 ref 參數必須由調用方明確賦值.因此不需要由接受方明確賦值. 可以將數組類型的 ref 參數更改為調用的結果.例如,可以為數組賦以 null 值,或將其初始化為另一個數組.例如: public static void MyMethod( ref int[] arr ) { ??? arr = new ????int[10]; ??? // arr初始化為一個新的數組
} 下面的兩個示例說明 out 和 ref 在將數組傳遞給方法上的用法差異. 示例 1在此例中,在調用方(Main 方法)中聲明數組 myArray,并在 FillArray 方法中初始化此數組. 然后將數組元素返回調用方并顯示. using System; class TestOut { ??? static ????public void FillArray( out ????int[] myArray ) ??? { ??????? // 初始化數組(必須):
??????? myArray = new ????????int[5] ????????{ ??????????? 1, 2, 3, 4, 5 ??????? } ??????? ; ??? } ??? static ????public void Main( ) ??? { ??????? int[] myArray; ??????? // 初始化數組( 不是必須的! )
??????? // 傳遞數組給(使用out方式的)調用方:
??????? FillArray( out myArray ); ??????? // 顯示數組元素
??????? Console.WriteLine( "數組元素是:" ); ??????? for ( int i=0; ??????? i < myArray.Length; ??????? i++ ) ??????? Console.WriteLine( myArray[i] ); ??? } } 輸出數組元素是:12345示例 2在此例中,在調用方(Main 方法)中初始化數組 myArray, 并通過使用 ref 參數將其傳遞給 FillArray 方法.在 FillArray 方法中更新某些數組元素. 然后將數組元素返回調用方并顯示. using System; class TestRef { ??? public static void FillArray( ref ????int[] arr ) ??? { ??????? // 根據需要創建一新的數組( 不是必須的 )
??????? if ( arr == null ) ??????? arr = new ????????int[10]; ??????? // 否則填充數組,就可以了
??????? arr[0] = 123; ??????? arr[4] = 1024; ??? } ??? static ????public void Main ( ) ??? { ??????? //初始化數組:
??????? int[] myArray = ????????{ ??????????? 1,2,3,4,5 ??????? } ??? ????; ??????? ????????// 使用ref傳遞數組:
??????? FillArray( ref myArray ); ??????? //顯示更新后的數組元素:
??????? Console.WriteLine( "數組元素是:" ); ??????? for ( int i = 0; ??????? i < myArray.Length; ??????? i++ ) ??????? Console.WriteLine( myArray[i] ); ??? } } 輸出數組元素是:1232341024
總結
以上是生活随笔為你收集整理的c#学习体会:使用 ref 和 out 传递数组的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 发送Gmail邀请.
- 下一篇: Vista下与移动设备的同步笔记