我如何在c++中的两个类之间双向传递数据
How can I pass data bidirectionally between two classes in C++
我正在使用MVC架构。我已经设置好了GUI,并且我的控制器使用模型进行数据访问。我的问题是:如何在控制器和GUI(视图)之间设置双向数据流。我正在使用Qt,所以当我点击一个按钮时,它会发出一个动作。为了让Action向控制器发射,我需要它的一个实例。然后从控制器端,我需要视图的一个实例,这样我就可以告诉它如何行为。那么,怎样才能实现这种沟通呢?我的方向对吗?请让我知道你们的想法。
谢谢
视图不需要显式地感知控制器。控制器可以连接到视图的任何信号,这些信号可以中继相关数据,也可以为空。当控制器在插槽中处理它们时,它可以调用视图上的方法来获取尚未包含在信号中的数据。控制器也可以在任何时候调用任何视图方法。
我通常将小部件(按钮)信号直接连接到视图类中的插槽,并公开控制器可以连接的自定义聚合信号,而不是暴露所有小部件本身。
相关文章:
- 给定两个偶数,求出它们之间所有偶数的平方和
- C++需要帮助从用户那里获得一个整数,并确保它在另外两个整数之间
- 如何在两个 boost::multi_arrays (C++) 之间执行数学运算?
- 查找字符在两个索引之间出现的次数
- 如何使用 OpenCV 解码在两个 UWP 应用之间发送的图像字节?
- C++两个源文件之间共享的枚举的静态实例
- 如何使用发送数据包所花费的时间计算两个节点之间的距离?
- 以天C++为单位的两个时间戳之间的差异
- 将向量之间的数字放在另一个向量之间<vector>>如果两个数字的差值为 1
- 我已经建立了递归关系,它找到了两个字符串之间最长的连续公共字符串,我怎么能跳过其中一个字符串中的一个字符
- 通过插槽和信号在不同线程中的两个qt对象之间进行通信
- 在C++中查找两个向量之间最相似的值
- 两个有符号数字之间的距离
- Directx 12 :在两个进程之间共享图形内存
- 如何找到两个日期之间的时间差异(以秒和纳秒为单位)?
- 是否有一种标准方法来计算两个 asctime() 值之间的天数
- 如何找到两个棋盘平面之间的角度?
- 计算两个迭代器之间的距离时"Vector Iterators Incompatible"
- 使用 Dijkstra 算法跟踪两个节点之间的最短路径
- 无法理解代码背后的逻辑,这是在两个给定数字之间生成素数的优化问题