正确关闭QmetaObject ::连接
correctly close QMetaObject::Connection
本文关键字:连接 QmetaObject 更新时间:2023-10-16
我不是qt也不是C 开发人员,而是为了一项小任务,我必须注册qmetaObject ::连接。
我的问题是,如何正确关闭连接
QMetaObject::Connection _sessionStarted = Q_NULLPTR; //or nullptr
给我 error: conversion from 'std::nullptr_t' to non-scalar type 'QMetaObject::Connection' requested
如果我确实有连接
,我还必须在某个地方检查一下if (_sessionStarted == Q_NULLPTR)
哪个有效,但是如何重置?
我还尝试了delete _sessionStarted
并检查了文档
预先感谢!
QMetaObject::Connection
作为值类型,而不是指针。基本上,它就像是指向内部连接数据的智能指针。要创建一个"无效"连接,只需使用默认构造函数创建一个连接:
QMetaObject::Connection _sessionStarted;
检查有效性也是如此:
if(_sessionStarted)
//Connection is valid and active
要"删除"连接,即与信号断开插槽的连接,使用QObject::disconnect
方法:
QObject::disconnect(_sessionStarted);
相关文章:
- QMetaObject invokeMethod的基于函数指针的语法
- 当套接字连接断开时检测C/C++Unix
- 无法在windows上使用mingw将sqlite3与c连接
- 到连接组件算法的问题(递归)
- QTcpSocket在不阻塞GUI的情况下重新连接到服务器
- 无法在C++中建立与MySQL数据库的连接
- PC中的程序和PHONE中的本机描述应用程序之间的数据连接
- 在Qt Creator中,如何在连接到正在运行的进程后查看控制台输出
- 连接 dockerized 模型和 dockerized 数据库时出现"无法 SQLConnect"错误
- 使用 bfs 解决连接组件问题时得到错误的答案
- 在C++的两个字符串中连接以逗号分隔的唯一值
- 如何修复valgrind启动时的致命错误(与libc6-dbg和libc6-dbg:i386连接)
- C++应用程序 MySQL odbc 数据库连接错误:在引发"otl_tmpl_exception<>"实例后终止调用
- OSX蓝牙打开RFCOMMChannelAsync声称已连接,但未建立连接,并且从未调用过委托
- 在 libcurl 连接池中预创建连接
- 套接字连接"Operation not permitted"错误,甚至使用升压/平发器根.cpp
- libcurl 和 DNS ttl 中的内部连接管理
- 如何应用 libcurl 的持久连接选项
- 提升 ASIO - io_service 不要等待连接到线程
- 正确关闭QmetaObject ::连接