【发布时间】:2016-11-10 03:43:03
【问题描述】:
假设SomeClass 有成员Object1 和Object2,并且Object1 和Object2 之间存在联系,例如:
connect(Object1, signal1, Object2, slot1)
经过一些重构,Object3 被添加到SomeClass 并且Object2 被移动为Object3 的成员,但仍然需要Object1 和Object2 之间的连接。
Object1 和Object2 之间的通信现在必须通过Object3。这意味着需要修改Object3,添加一对信号/插槽只是为了实现Object1 和Object2 之间的通信。
这意味着 Object3 的 .h 和 .cpp 都将被修改,添加多行代码来完成以前只需一行完成的事情。
我懒惰的一面告诉我这个故事有一些奇怪的地方。有什么方法可以让这种联系更直接吗?
【问题讨论】:
-
"这意味着 Object3 需要修改..." - 为什么???相同的
connect(Object1, signal1, Object2, slot1)将像以前一样工作(我想Object1和Object2是您代码中的指针)