------解决方案-------------------- 暂时抛开这个例子是否会被多次载入、使用不说 static string x = "asdfasdfasdf"; string y="asdf"+x;//这样是正确的为什么? static成员变量是一个初始值设定的操作,不是一个赋值操作。第一个载入的人就开始设定了这个值。 这个例子为什么能够运行? 是因为static不需要借助任何对象,编译器不会为他加一个this指针。 问题2: 为什么this如此重要? Public Class A { private int _myint; public int Myint { get{} set{} } A(){} public void ss(int myint) { Myint=myint; } } 看看被编译器搞过的类 Public Class A { private int _myint; public int Myint { get{} set{} } A(){} public void ss(int myint,(A *)this)//可以看看c++Mfc框架之类的书 { this.Myint=myint; } } 为什么编译器会这么干? A a1=new A(); A a2=new A(); a1.ss(1); a2.ss(2);