【问题标题】:boost and qt signal together usageboost和qt信号一起使用
【发布时间】:2012-06-25 10:26:32
【问题描述】:

我在 qt creator 中同时使用 boost 和 qt 信号和插槽。我遵循了提到的instruction。这是我的 .pro 文件

QT       += core gui

TARGET = adaptortest
TEMPLATE = app


SOURCES += main.cpp\
        mainwindow.cpp \
    adaptor.cpp \
    gstreamer.cpp

HEADERS  += mainwindow.h \
    adaptor.h \
    gstreamer.h

FORMS    += mainwindow.ui
LIBS        += -L. -L/usr/lib -lcurl -ltag -fopenmp -lboost_filesystem -lboost_system
CONFIG      += no_keywords # so Qt won't #define any non-all-caps `keywords'
INCLUDEPATH += . /usr/include/boost/



unix:!macx:!symbian: LIBS += -lboost_signals

现在我应该使用大写的 QT 宏,但是对于发射信号,“发射信号名”和“Q_EMIT 信号名”都不起作用。在这种情况下我应该如何发出信号?

【问题讨论】:

    标签: qt boost signals-slots


    【解决方案1】:

    不需要使用宏 emit 或 Q_EMIT 发射信号。 Qt 中的信号只是类的方法,因此您只需像其他方法一样调用它们。 emit 和 Q_EMIT 只是为了直观地表明此特定方法是 Qt 信号

    【讨论】:

    • 不适用于跨线程的信号。在另一个线程中调用函数是危险的。
    猜你喜欢
    • 2011-06-16
    • 1970-01-01
    • 1970-01-01
    • 2012-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多