我需要在我的 C# 程序中对一组点进行硬编码。C 风格的初始化程序不起作用。
PointF[] points = new PointF{
/* what goes here? */
};
它是如何完成的?
我需要在我的 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)
};