public void log(String msg, Color c = Color.black)
{
loggerText.ForeColor = c;
loggerText.AppendText("\n" + msg);
}
這會導致錯誤c必須是編譯時常量。我已經閱讀了這一點,大多數例子都是關於字符串和整數的。我發現我可以使用colorconverter類,但我不確定它會非常有效。有沒有辦法將基本顏色作爲可選參數傳遞?C#4.0:我可以使用Color作爲默認值的可選參數嗎?
public void log(String msg, String c = "Black")
{
ColorConverter conv = new ColorConverter();
Color color = (Color)conv.ConvertFromString(c);
loggerText.ForeColor = color;
loggerText.AppendText("\n" + msg);
}
你也可以使用'默認值(色彩)'作爲默認值 - 但有時這可能使人們無法區分有效的參數值的默認值。在這種情況下,Nullable傾向於更好。 – LBushkin 2010-05-10 16:31:06
@Bushkin:我完全同意這一點! – Simon 2010-05-10 16:32:01
thx ..用顏色解決了我的問題。 +1 – kplshrm7 2015-11-26 10:17:22