看板 C_Sharp 關於我們 聯絡資訊
最近學到不定參數的方法,發現了一些事,請看程式碼: using System; class Program { public static int addi(params int[] value) { int sum = 0; foreach( int i in value ) sum += i; return sum; } public static void Main(string[] args) { int[] myArry = {1,2,3,4,5,6,7,8,9,10}; Console.WriteLine("不定參數呼叫?"+addi(myArry)); //可以這樣用嗎? Console.WriteLine("不定參數呼叫:"+addi(1,2,3,4,5,6,7,8,9,10)); } } 在 Main 裡面,照理說我們這樣呼叫 addi(1,2,3),參數隨便給幾個都行,但是我隨意的 給了一個陣列 addi(myArry),結果,它也跑出一樣的答案了。 我要問的是,不定參數不就是要給它一堆參數,而我在參數裡傳陣列進去,它竟然接受, 這是正常的嗎? 既然陣列可以,我試了一下:addi(1,2,3,myArry) 這樣傳又會出錯。 到底怎麼回事? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.58.107.57