Qt避免多次connect操作之后一个信号触发多个槽

偶尔会遇到一个对象的在某些情况下会被多次connect的情况,为了应对这个情况需要

在connect操作的时候加上flag:Qt::UniqueConnection

例如:

QObject a;
QObject b;

connect(&a, &QObject::signal, &b, &QObject::slot, Qt::UniqueConnection);
connect(&a, &QObject::signal, &b, &QObject::slot, Qt::UniqueConnection);

这样之后第二次connect将会失败,可以避免多次connect之后发送一个信号触发多个槽的情况。

你可能感兴趣的:(Qt实践,qt,开发语言)