生命是短暫傳遞參數爲多個參數的函數的陣列中的C#
def foo(b,a,r):
# bla bla bla
pass
mylist = ['b','a','r']
foo(*mylist)
這就是如何傳遞的參數的列表成方法多個位置參數在的Python。
但在C#中,我發現使用PARAMS關鍵字傳遞一個數組到參數數組的,像這樣的:
void foo(params string[] bar)
{
// bla bla bla
}
string[] mylist = {"b", "a", "r"};
foo(mylist)
試想一下,如果我不能觸摸的功能,是有一種更簡單的方法 有沒有辦法做到這一點?
這裏是我的意思是:
void foo (string b, string a, string r)
{
// bla bla bla
}
string[] mylist = {"b", "a", "r"};
foo(mylist[0],mylist[1],mylist[2]); // This line makes my life difficult
我在網上搜索並不能找到它的替代品。只是想確保我沒有錯過C#提供的隱藏功能。誰知道我們有這樣的捷徑?
如果你不能修改函數參數來接受params數組,那麼你不能這樣做。 – Matthew 2012-02-11 17:25:10
'params'將是解決方案,因此判定C#處於不公平劣勢;-) – BrokenGlass 2012-02-11 17:25:22
但是使用參數參數,我們不知道該方法需要什麼參數以及需要多少參數。這就是爲什麼我用不同的變量名稱分隔每個參數,以便我們知道接下來要傳入的參數是什麼。 – Yeo 2012-02-11 17:54:34