实现功能:
从主机Boy分别传递若干多Flower给主机Girl1、2、3、...8。基本要求:
接口IBoy的实现类是CBoy,接口IGirl的实现类是CGirl.我的猜想:
实现一个接口IPostman(或IServer),IBoy、IGirl1-9分别注册到IPostman,当IBoy发出Flower时,IPostman将该Flower以事件通知的方式发给IGirl1-8.具体问题:
1.上面的结构能否实现上述功能?
2.IPostman如何区分注册的接口是IBoy,而不是IGirl?
3.IPostman如何保证将Flower只投递给Girl1-8,而不投递给Girl9?

解决方案 »

  1.   

    使用事件就是服务器端触发事件机制。先问问你有多少个boy?如果只有一个就很好办。
      

  2.   

    >> 2.IPostman如何区分注册的接口是IBoy,而不是IGirl?要是用VC的话,__uuidof 可以在运行时获得接口指针的IID,这样你就可以区分 IBoy 和 IGirl 了。
      

  3.   

    to phonlee(not a bird,but ...) 
    如何保证整个系统只有一个boy?如果是DCOM的分布式系统,也能保证么?
    还有,能简单介绍一下怎么在CPostman,CBoy,CGirl之间传递事件?他们之间的关系是各自独立的,还是有某种继承关系?现在我知道事件能在基于一个组件对象的多个接口间传递,如果这几个接口的组件对象不是一个怎么办?是用聚合么?
      

  4.   

    to  xlander(阿富):使用连接点。去看看
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/com/htm/events_1vw3.asp
    另外, 你的msdn中有例子。
      

  5.   

    http://www.codetools.com/com/Replication_Directory.asp这个例子很好