我想了解一些编程考试的代码,我偶然发现了这个表示法,我似乎找不到解释。 我搜索了stackoverflow,msdn和几个在线教程,但没有运气。C#对象初始化程序
的代码是这样的:
class A
{
public A(): this("b")
{
Console.WriteLine("c");
}
public A(string i)
{
Console.WriteLine(i);
}
}
class B : A
{
public B()
{
Console.WriteLine("a");
}
---------------
static void Main(string[] args)
{
A b = new A();
}
}
此,按说,打印出“BC”,但我甚至无法理解的继承和所有。我无法找出什么是这个符号在这里做:
public A(): this("b")
{
Console.WriteLine("c");
}
我发现的唯一的事情,看上去类似远程的对象初始化,但只能在一个在线教程。为他们检查了MSDN - 没有类似的代码。任何人都可以帮忙?提前致谢!
您是否阅读过有关构造函数语法的规范部分? –
[它被称为''构造器链接''。](http://stackoverflow.com/questions/1814953/c-sharp-constructor-chaining-how-to-do-it) –
什么'符号'特别是混淆给你? ':this(“b”)'将调用A类参数化构造函数,并简单地打印“b”,然后调用A无参数构造函数 - 打印“c”。 – Marcus