class TestClass
{
    public static void FunA()
    {
    }
    
    public static void FunB()
    {
         TestClass.FunA();
    }
}
比如性能上,并发上?谢谢

解决方案 »

  1.   

    我觉得没什么不好,应为函数都是在代码段的,member函数与static函数也就差在编译的时候,编译器会给member函数加入class const *this指针,反而会更加花时间.
      

  2.   

    TO:我觉得没什么不好,应为函数都是在代码段的,member函数与static函数也就差在编译的时候,编译器会给member函数加入class const *this指针,反而会更加花时间.照你的意思,那把所有的成员函数都做成静态函数得了,那样速度不更快?我初学C#,我也是发表我的看法,仅供参考..
      

  3.   

    “照你的意思,那把所有的成员函数都做成静态函数得了,那样速度不更快?”确实会更快,但是静态函数访问对象的数据很麻烦,因为不能用this,呵呵
    还有静态函数里调用静态函数怎么影响封装了?
      

  4.   

    如果FunA在执行,又调用了FunB.static变量不就乱了吗
      

  5.   

    //如果FunA在执行,又调用了FunB.static变量不就乱了吗//这个多线程的问题啊,lock那个变量就行了啊
    和静态函数有什么关系?普通函数在多线程情况下也会遇到这种问题的
      

  6.   

    TO:lijgame(五月)不好意思,可能我的说法有误,呵呵..关于这种用法好不好,我也只是发表我的看法,万事都没有一个绝对,还得看具体情况吧..
      

  7.   

    其实就效率来说,static快,就oo来说member函数好.static有很多局限性.
    为什么c要比c++快,oo给我们带来方便得时候会损失性能,但如果代价不多,回报大得话,c++就实用了.