需要具有> 2项的数组的方法

时间:2017-01-01 06:17:27

标签: c# geometry

我正在使用Shapes。众所周知,形状由3行或更多行组成。一个少于3的人是不可能的。

如果Polygon类的行参数少于3个,是否可以阻止实例化?

public partial class Polygon : Control
{
    private Line[] lines;
    public Line[] Line { get { return lines; } }
    public Polygon(Line[] Lines)
    {
        lines = Lines;
    }
}
// Somwhere else in the code...
new Polygon( new Line(new Vector3(), new Vector3()) ) // invalid shape

2 个答案:

答案 0 :(得分:1)

抛出异常:

public Polygon(Line[] Lines)
{
    if (Lines.Length < 3)
        throw new ArgumentException("Number of lines must be greater than 3.");

    lines = Lines;
}

答案 1 :(得分:0)

如果少于3行,您可以使用默认值。 尝试使用单位向量作为默认值。