2013-06-28 34 views
3

我正在研究一個函數,我想定義多個原型並想知道這是否可能。定義多於一個原型的函數

我知道視覺工作室爲他們的一些函數調用做這件事,但不知道它是否可以自己做。

+2

代替你能給出你想要做什麼的代碼示例? – Maciej

+0

除了下面的答案:默認參數值是一個.NET 3.5 C#功能。我看到你正在使用VS2010。 http://stackoverflow.com/questions/3602234/c-sharp-default-parameters –

回答

4

是的,你可以overload功能:

public void Function() { 

} 

public void Function(string argument) { 

} 

public void Function(string argument, string argument) { 

} 

或者你可以使用params

public void Function(params string[] arguments) { 

} 

然後,您可以通過調用函數:

Function("argument1", "argument2", "argument3"); 
+0

這是完美的,正是我想知道的,謝謝。只要它讓我,我會選擇這個作爲正確的答案。 –

+0

@IanOswald - 沒問題:) –

0

由於達倫寫道:你可以在C#中創建過載程序

通過引入可選參數和默認值,其中的一些可以減少到一個單一的實現:

例如,

public void Foo(string param1, int param2) 
{ 
    ... 
} 

public void Foo(string param1) 
{ 
    Foo(param1, 12); 
} 

可以通過

public void Foo(string param1, int param2 = 12) 
{ 
    ... 
}