关于c#:如何引用另一个构造函数?

How to reference another constructor?

本问题已经有最佳答案,请猛点这里访问。

如何在C中引用另一个构造函数?例如

1
2
3
4
5
6
7
8
9
class A
{
    A(int x, int y) {}

    A(int[] point)
    {
      how to call A(point.x, point.y}?
    )
}


很简单。与调用基本构造函数的方法相同。

1
2
3
A(int[] point) : this(point[0], point[1])
{
}


可以在"派生"构造函数中使用关键字this来调用"this"构造函数:

1
2
3
4
5
6
7
8
9
class A
{
    A(int x, int y) {}

    A(int[] point) : this(point[0], point[1]) { //using this to refer to its own class constructor
    {

    }    
}

除此之外,我认为您应该按索引获取数组中的值:point[0], point[1],而不是像获取字段/属性:point.x, point.y那样做。