本帖最后由 yzmsb4 于 2011-03-15 04:09:49 编辑

解决方案 »

  1.   

    这有点类似封装的概念,可以把实现(myt内部的代码)和应用(使用myt类的代码)明确的分开,互不影响。客户不需要也不应该知道类的实现细节。
    按照get/set的方法写了之后,以后如果有必要可以随时修改get和set,而任何使用了这个类的代码都不需要任何修改。
    比如说,想给set加一个判断条件,
              set
              {
                  if (value......)
                        stallchar = value;
                  else
                        ......
              }
    就这样直接修改myt代码即可,客户的代码一点都不用改动。
    而如果按照你的更省事的写法,想做类似的改动可就麻烦了,所有客户的代码全都得重写。
      

  2.   

    好像写成属性可以避免对类中变量的直接访问,起到保护作用,还有就是可以在属性的get和set中添加逻辑处理关系。我也不是很懂,呵呵!
      

  3.   

    用get/set的方法,可以对客户如何读写类内部成员做一些控制。
    如果直接用public成员,客户的代码就可以为所欲为了。
      

  4.   

    就这么点效率相差也不会很大,如果计较这么点效率就肯定不会用C#等面向对象语言了
    Java,C#等面向对象语言,都是采用方法来修改或返回类内的属性,这体现了对象的思想(完全不同于C等)