我试图编写一个函数,该函数用数组的内容填充字符串,或者将它们设置为NULL。字符串的数量是可以改变的,我不想添加像它们这样的需求,它们都是同一个数组或类的一部分。
在C#中,不能组合param
和out
因此,这样做的唯一方法似乎是重载这样的方法:
public void ParseRemainders(string[] remainders, out string p1)
{
p1 = null;
if ((remainders != null) && (remainders.Length > 0))
p1 = remainders[0];
}
public void ParseRemainders(string[] remainders, out string p1, out string p2)
{
p1 = null;
p2 = null;
if (remainders != null)
{
ParseRemainders(remainders, out p1);
if (remainders.Length > 1)
p2 = remainders[1];
}
}
public void ParseRemainders(string[] remainders, out string p1, out string p2, out string p3)
{
p1 = null;
p2 = null;
p3 = null;
if (remainders != null)
{
ParseRemainders(remainders, out p1, out p2);
if (remainders.Length > 2)
p3 = remainders[2];
}
}
.... and on forever ....
如何避免所有这些代码重复,理想情况下接受任意数量的参数?
相似问题