我需要在C#程序中对一系列点进行硬编码。 C风格的初始化程序不起作用。

PointF[] points = new PointF{
    /* what goes here? */
};

怎么做?

有帮助吗?

解决方案

像这样:

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 来缩短,实际上不可能“使用数组初始值设定项隐式输入变量”。

其他提示

您需要使用new来实例化每个PointF。

这样的东西

Pointf [] points = {new PointF(0,0),new PointF(1,1)等......

这里的语法可能不是100%......我回到了几年前我最后一次这样做的时候。

PointF[] points = new PointF[]
{
    new PointF( 1.0f, 1.0f),
    new PointF( 5.0f, 5.0f)
};

对于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)
};
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top