C#构造函数使用它

时间:2013-10-22 19:21:55

标签: c#

有人可以解释构造函数中: this(123)的含义吗?

public class MyObject
{      
    public MyObject(): this(123)
    {
    }
    ............
}

6 个答案:

答案 0 :(得分:2)

因为你的类有另一个构造函数,它以int为参数。

public class MyObject
{
    public MyObject()
        : this(123)
    {
    }

    public MyObject(int x) //something like this
    {
    }
}

请参阅:Using Constructors (C# Programming Guide)

  

构造函数可以通过调用同一对象中的另一个构造函数   使用this关键字。

答案 1 :(得分:1)

这意味着,您正在调用另一个具有固定值“123”的构造函数:

public class MyObject
{      
    public MyObject(): this(123)
    {

    }

    public MyObject(int number)
    {

    }
}   

表示:每当您拨打new MyObject()时,如果没有任何参数,则等于对new MyObject(123);的调用

答案 2 :(得分:1)

这用于在同一个类中调用另一个构造函数。 请参阅本文以便更好地理解。

http://www.codeproject.com/Articles/7011/An-Intro-to-Constructors-in-C

答案 3 :(得分:1)

你有另一个构造函数接受一个int(认为它可能是long或double,或者int可以隐式转换为其他任何东西)

    public class MyObject
    {      
       public MyObject(): this(123)
       {
       }

       public MyObject(int num)
       {
          //do something with the num
       }
   }

答案 4 :(得分:0)

这意味着 “在执行花括号之间的操作之前,使用参数123执行合适的构造函数”

答案 5 :(得分:0)

提供的语法用于“构造函数链接”,其中指定的构造函数(接受整数参数)在当前构造函数的主体之前调用。