-2

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

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

6 回答 6

2

因为你的类有另一个构造函数,它接受和int作为参数。

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

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

请参阅:使用构造函数(C# 编程指南)

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

于 2013-10-22T19:23:58.830 回答
1

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

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

       public MyObject(int num)
       {
          //do something with the num
       }
   }
于 2013-10-22T19:25:43.343 回答
1

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

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

    }

    public MyObject(int number)
    {

    }
}   

意思是:只要你调用new MyObject(),不带任何参数,它就等于调用new MyObject(123);

于 2013-10-22T19:24:37.717 回答
1

this 用于从同一类中的另一个构造函数调用一个构造函数。请参阅这篇文章以获得更好的理解。

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

于 2013-10-22T19:25:38.047 回答
0

这意味着 “在执行大括号之间的内容之前,请使用参数执行合适的构造函数123

于 2013-10-22T19:24:44.897 回答
0

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

于 2013-10-22T19:24:45.770 回答