我需要在C#程序中对一系列点进行硬编码。 C风格的初始化程序不起作用。
PointF[] points = new PointF{
/* what goes here? */
};
怎么做?
答案 0 :(得分:6)
像这样:
PointF[] points = new PointF[]{
new PointF(0,0), new PointF(1,1)
};
在c#3.0中,你可以写得更短:
PointF[] points = {
new PointF(0,0), new PointF(1,1)
};
更新 Guffa指出我要使用var points
进行缩写,实际上不可能“使用数组初始值设定项隐式输入变量”。
答案 1 :(得分:2)
您需要使用new来实例化每个PointF。
像
这样的东西Pointf [] points = {new PointF(0,0),new PointF(1,1)等......
这里的语法可能不是100%......我回到了几年前我最后一次这样做的时候。
答案 2 :(得分:1)
PointF[] points = new PointF[]
{
new PointF( 1.0f, 1.0f),
new PointF( 5.0f, 5.0f)
};
答案 3 :(得分:1)
对于C#3:
PointF[] points = {
new PointF(1f, 1f),
new PointF(2f, 2f)
};
对于C#2(和1):
PointF[] points = new PointF[] {
new PointF(1f, 1f),
new PointF(2f, 2f)
};