在C#.NET中,为什么我不能使用'this'关键字访问类中的常量?
示例:
public class MyTest
{
public const string HI = "Hello";
public void TestMethod()
{
string filler;
filler = this.HI; //Won't work.
filler = HI //Works.
}
}
答案 0 :(得分:14)
因为类常量不是实例成员;他们是班级成员。 this
关键字引用的是对象,而不是类,因此您不能使用它来引用类常量。
无论您是在类中的静态方法还是实例方法中访问常量,这都适用。
答案 1 :(得分:4)
常量隐含static
。
答案 2 :(得分:3)
因为常量是类的一部分,所以需要使用类名:
filler = MyTest.HI;
答案 3 :(得分:2)
const项是隐式静态的。这意味着它属于类而不是类的成员。