I was reading a book about c# and came across a use of the key word “this” that i did not understand. Can u help me out ?
我在看树的结构,我喜欢一个建设者(在树类中)如下所示:
1 2 3 4 5 6 7 8
| public Tree(T value, params Tree<T>[] children)
: this(value)
{
foreach (Tree<T> child in children)
{
this.root.AddChild(child.root);
}
} |
有人能给我解释一下:"这个(值)"是什么意思吗?
- 只有EDOCX1[1]作为参数,调用EDOCX1[0]的构造函数重载。
- 参见:stackoverflow.com/questions/6270774/&hellip;
- 谢谢你,先生。现在我记得我已经看过了,我要再看一遍。很抱歉耽误了你的时间。
- 一般来说,this指的是你目前所在的班级。你看不太清楚,因为它是暗含的……例如,您在Person类中看不到一个方法称为this.Name ="Nikolai",因为Name ="Nikolai"只会做得很好。方法也一样:当你的类中的一个方法想要在同一个类中调用另一个方法时,它可以说是this.DoSomething(),但你更可能只写DoSomething()。那么为什么要与构造函数一起使用呢?好。。没有任何方法可以按名称引用构造函数,因为它们没有与方法或属性具有名称相同的名称,所以..
- ..惯例是使用this(arguments to constructor here)。
它被称为构造函数链接。类的另一个构造函数在该构造函数之前调用。基本上它是base,但是它有一个当前类的构造函数而不是基类。
这里使用this调用类上的另一个构造函数重载,并将value作为参数传递。