下面是一个例子功能:我可以在C#4.0中指定默认的颜色参数吗?
public void DrawSquare(int x, int y, Color boxColor = Color.Black)
{
//Code to draw the square goes here
}
编译器不断给我的错误:Default parameter value for 'boxColor'must be a compile-time constant
我已经试过
Color.Black,
Color.FromKnownColor(KnownColor.Black), and
Color.FromArgb(0, 0, 0)
如何使Color.Black是默认的颜色?此外,我不想使用字符串Black
来指定它(我知道会工作)。我想要Color.Black
值。
我已经在我的答案,但如果你要指定一个空参数,为什么不只是指定Color.Black? :) – 2010-12-15 20:12:45
@George:“Color.Black是一个静态的,而不是一个常量”。 – Vlad 2010-12-15 20:13:27
颜色是一个结构体,所以如果您要使用Nullable作为类型(或简称为C#Color?),则它可以为null。 –
2010-12-15 20:19:23