【发布时间】:2013-01-31 22:16:02
【问题描述】:
我有一个包含 8 个整数的 QVector。现在我想要一个在这个向量的元素改变时发出的信号。这个信号应该包含被改变的元素的编号。
我该怎么做?
【问题讨论】:
我有一个包含 8 个整数的 QVector。现在我想要一个在这个向量的元素改变时发出的信号。这个信号应该包含被改变的元素的编号。
我该怎么做?
【问题讨论】:
QVector 不是从 QObject 派生的,因此不会发出任何信号。
您可以做的是将 QVector 对象封装为您自己的类中的私有成员,该类派生自 QObject 并编写您需要的修改方法,并在该类中编写和发出您需要的信号。
【讨论】:
这相当棘手。您不应该从QVector 继承,因为它没有虚拟析构函数,也没有可用于挂钩的受保护函数。最安全的方法是将QVector 包装到您自己的实现这些信号的特定于域的类中。
【讨论】: