mike1199 2015-04-15 14:21 采纳率: 0%
浏览 2482

c++中实现类间的相互通信

我想的问题:
有两个类在两个线程中独立运行。但这两个类需要相互传递参数,又要确定对方传完(修改)参数后进行下一步操作。
现在面临类的相互包含,还有如何确定对方修改了参数的问题。不知道如何解决。
我看的一种解决方法是在类a前先声明有类b的存在。但只是这样a仍不知道b内有什么变量和函数。
第二种方法是回调函数。但我只找到了c#的教程,没有c++类中成员函数的回调教程。如果各位有相关材料希望能给个链接。
第三种方法是用全局变量,但仍不能得知变量是否被修改过。
本人小白,不知道这种类的互相包含是否应该避免,如果是,(一般来说)应该如何设计类之间的关系。对于我这种情况,有什么途径实现类相互通信的功能呢?

  • 写回答

3条回答 默认 最新

  • oyljerry 2015-04-15 14:27
    关注

    线程通信可以用event等事件通知,然后全局变量交换数据。

    评论

报告相同问题?

悬赏问题

  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?