2

我正在学习过程中,我有一个问题我无法找到满意的答案。

this我需要一个概要。我不断看到它,人们已经建议修复我使用它的代码。我真的不知道它到底做了什么。如果有人好心给我一个基本的概要,我会很高兴的。

4

4 回答 4

11

它用于引用同一类中的另一个构造函数。你用它来“继承”另一个构造函数:

public MyClass() {}

public MyClass(string something) : this() {}

在上面,当调用第二个构造函数时,它首先执行无参数构造函数,然后再执行自身。注意 using: this()是等价的: base(),除了它指的是同一个类中的构造函数,而不是父类。

这里有一篇关于构造函数的文章(MSDN),它提供了一个使用示例:

public Employee(int annualSalary)
{
    salary = annualSalary;
}

public Employee(int weeklySalary, int numberOfWeeks)
    : this(weeklySalary * numberOfWeeks)
{
}
于 2013-09-10T22:01:30.137 回答
3

它用于调用类中的另一个构造函数:

public class Test {
    public Test() : this("AmazingMrBrock")
    {

    }

    public Test(string name) 
    {
       Console.WriteLine(name);
    }

}

http://msdn.microsoft.com/en-us/library/vstudio/ms173115.aspx

于 2013-09-10T22:02:04.607 回答
1

this 关键字在许多上下文中使用,并且只有复制整个权威来源才能给出完整的答案。C# 语言参考

this 关键字引用类的当前实例,也用作扩展方法的第一个参数的修饰符。

于 2013-09-10T22:04:14.750 回答
0

关键字引用类的this当前实例,也用作扩展方法的第一个参数的修饰符。

看到这个: http: //msdn.microsoft.com/en-us/library/vstudio/dk1507sz (v=vs.120).aspx

于 2013-09-10T22:10:01.713 回答