c++ - 将信号连接到 Qt 中的插槽时出现问题

标签 c++ multithreading qt qt5 signals-slots

我用 Qt/C++ 开发了一个应用程序。我添加了一个线程来管理 android 设备访问和另一个线程用于 UI 管理。

运行应用程序时,我发送不同的信号和接收槽。

对于其中一些,我在运行时遇到以下错误的问题:

QObject::connect: Cannot queue arguments of type 'uint32_t'
(Make sure 'uint32_t' is registered using qRegisterMetaType().)

我该怎么办?是否需要对所有类或 main.cpp 进行任何更改?

最佳答案

最简单的方法是在信号和槽的参数中使用 quint32 而不是 uint32_tquint32 已为您预先注册在元类型系统中。

关于c++ - 将信号连接到 Qt 中的插槽时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30589138/

相关文章:

c++ - MySQL服务器消失了

c++ - Coroutine、Coroutine2 和 Fiber 有什么区别?

c++——消失的变量

c++ - 除了允许 const 函数修改变量之外, 'mutable' 关键字是否还有其他用途?

c++ - 我只是安装了Visual Studio,并特别遇到了一些错误WindowsSDKDir属性未定义。可能找不到某些构建工具

swift - 多线程核心数据有时返回nil属性

java - 是否有必要使原始实例变量可变?

c++ - QLineEdit 在他的 parent 之前销毁

c++ - 使用 QT 和 OpenGL 编译 C++ 应用程序时出现问题

c++ - boost::filesystem::remove_all(path) 是如何工作的?