com 技术实现的 exe server中,对应多个client会有多个server object与之对应,建立connectiong point技术后,可以在object里(或者说类里)调用Fire_***()函数。那么,这个函数如何在其他的对象中(其它的类 A 中)使用?server object class包含了 class A的A.h file,那A.h不能再include server.h乐吧。
在 A.h 里声明 class serverclasss;  调用 pthis->Fire_***编译都不通过,因此求解方法。兄弟我在这里问了好多问题,谢谢大家。

解决方案 »

  1.   

    Fire_**函数都是保护函数,在Server Object class中声明 friend class A;就可以调用了
      

  2.   

    假设 class CB : server object class
         class CA :  our classCA 试图调用 CB 中的 Fire_***,所以CB 中声明friend class CA; 这个时候include "ca.h",
    那ca.h中无法声明cb.h了吧,这样在CA中写class CB; 编译器找不到class CB的定义,这种互锁的问题如何解?
      

  3.   

    CA.h中class CB;class CA
    {
    CB* pB;
    ...
    }也可以include "CA.h",也不会出错的
    当然是用class CB;这种预先声明的方式,是有很多好处的,可以有效减少一些应用程序的编译时间!