我有一个Color类,它包含颜色的红色,绿色和蓝色通道的值。类构造函数允许您通过指定三个通道的值来创建新颜色。但是,为方便起见,我还想为程序员提供一些“预制”颜色。例如,而不是像
那样DrawRectangle(new Color(1, 0, 0));
你可以说
DrawRectangle(Color.Red);
其中Color.Red是Color类中的Color实例。如何在Color类中声明这些Color实例?如果有这种技术的名称,我想知道它,因为当我在网上寻求帮助时,我不知道要使用哪些搜索条件。
答案 0 :(得分:8)
使用静态变量:
class Color
{
public Color(int r, int g, int b)
{
//..
}
public static readonly Color Red = new Color(255, 0, 0);
}
答案 1 :(得分:1)
我宁愿评论BrokenGlass的答案,但我还不被允许。
public static readonly Color Red = new Color(255, 0, 0);
将字段设为readonly会更好。
答案 2 :(得分:0)
在通话中有一个像这样的public static Color Red = new Color(1,0,0);