C#中完成可變參數實例。本站提示廣大學習愛好者:(C#中完成可變參數實例)文章只能為提供參考,不一定能成為您想要的結果。以下是C#中完成可變參數實例正文
C說話的printf函數,參數的數目可所以可變的。應用 va_start 和 va_end 完成。
C++中,完成參數可變,可以用 overload。假如參數數目不是許多的話,可以一個參數完成一個函數,兩個參數再完成一個函數,三個參數再完成一個函數...
或許應用C的計劃。
C#中,也能夠用 overload。或許 params 症結字。
下述代碼除演示 params 完成變數目的參數,還演示了 這些參數的類型不用雷同。
下述代碼的輸入是:
1
2
one
two
aa
one
two
aa
1
2
代碼以下:
namespace @params
{
class Program
{
public string value = "aa";
static void Main(string[] args)
{
Program p = new Program();
foo(1, 2, "one", "two", p);
Console.WriteLine();
foo("one", "two", p, 1, 2 );
}
public static void foo(params object[] list)
{
foreach(object o in list)
{
if (o.GetType() == typeof(int))
{
Console.WriteLine(o);
}
else if (o.GetType() == typeof(string))
{
Console.WriteLine(o);
}
else if (o.GetType() == typeof(Program))
{
Console.WriteLine(((Program)o).value);
}
}
}
}
}