虚拟Qt信号?

2024-01-12

在查看一些 Qt C++ 代码时,我遇到了这个:

class Foo
{
  Q_OBJECT

signals:
  virtual void someSignal(const QString& str, int n)
  {
    Q_UNUSED(str);
    Q_UNUSED(n);
  }
  ...
};

现在,Qt 信号不能有主体,所以我很惊讶这甚至可以编译(可能是因为主体实际上是空的)。我也不认为使信号虚拟化有什么意义,因为它不能有实体,那么如何才能覆盖它呢?

我在这里遗漏了一些东西还是这是有效的代码味道?


我觉得那看起来很臭。

在基类中声明信号然后从派生类发出它是有效的,例如

class MyBase : public QObject
{
    Q_OBJECT
// ...
signals:
    void somethingHappened();
};

class MyDerived : public MyBase
{
    Q_OBJECT
// ...
    void doSomething();
};

void MyDerived::doSomething()
{
    // ....
    emit somethingHappened();
}

也许这就是问题中声明的目的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

虚拟Qt信号? 的相关文章

  • 每个托管线程是否都有自己对应的本机线程?

    我想知道是否在 Net 中创建托管线程 通过调用Thread Start 导致在后台创建一个本机线程 那么托管线程是否有对应的本机线程呢 如果是 当托管线程等待或睡眠时 是否意味着相应的本机线程也在等待或睡眠 是的 NET 线程映射到所有当
  • 如何将 protobuf-net 与不可变值类型一起使用?

    假设我有一个像这样的不可变值类型 Serializable DataContract public struct MyValueType ISerializable private readonly int x private readon
  • 确保 StreamReader 不会挂起等待数据

    下面的代码读取从 tcp 客户端流读取的所有内容 并且在下一次迭代中它将仅位于 Read 上 我假设正在等待数据 我如何确保它不会在没有任何内容可供读取时返回 我是否必须设置低超时 并在失败时响应异常 或者有更好的办法吗 TcpClient
  • ClickOnce 应用程序错误:部署和应用程序没有匹配的安全区域

    我在 IE 中使用 FireFox 和 Chrome 的 ClickOnce 应用程序时遇到问题 它工作正常 异常的详细信息是 PLATFORM VERSION INFO Windows 6 1 7600 0 Win32NT Common
  • 错误:表达式不产生值

    我尝试将以下 C 代码转换为 VB NET 但在编译代码时出现 表达式不产生值 错误 C Code return Fluently Configure Mappings m gt m FluentMappings AddFromAssemb
  • 在 C 中匹配二进制模式

    我目前正在开发一个 C 程序 需要解析一些定制的数据结构 幸运的是我知道它们是如何构造的 但是我不确定如何在 C 中实现我的解析器 每个结构的长度都是 32 位 并且每个结构都可以通过其二进制签名来识别 举个例子 有两个我感兴趣的特定结构
  • 由 IHttpClientFactory 注入时模拟 HttpClient 处理程序

    我创建了一个自定义库 它会自动为依赖于特定服务的 Polly 策略设置HttpClient 这是使用以下方法完成的IServiceCollection扩展方法和类型化客户端方法 一个简化的例子 public static IHttpClie
  • 将 Word 文档另存为图像

    我正在使用下面的代码将 Word 文档转换为图像文件 但是图片显得太大 内容不适合 有没有办法渲染图片或将图片保存到合适的尺寸 private void btnConvert Click object sender EventArgs e
  • DbContext 和 ObjectContext 有什么区别

    From MSDN 表示工作单元和存储库模式的组合 使您能够查询数据库并将更改分组在一起 然后将这些更改作为一个单元写回存储 DbContext在概念上类似于ObjectContext 我虽然DbContext只处理与数据库的连接以及针对数
  • 如何检测表单的任何控件的变化?

    如何检测 C 中表单的任何控件的更改 由于我在一个表单上有许多控件 并且如果表单中的任何控件值发生更改 我需要禁用按钮 我正在寻找一些内置函数 事件处理程序 属性 并且不想为此创建自定义函数 不 我不知道任何时候都会触发任何事件any控制表
  • Azure 辅助角色“请求输入之一超出范围”的内部异常。

    我在辅助角色中调用 CloudTableClient CreateTableIfNotExist 方法 但收到一个异常 其中包含 请求输入之一超出范围 的内部异常 我做了一些研究 发现这是由于将表命名为非法表名引起的 但是 我尝试为我的表命
  • C# HashSet 只读解决方法

    这是示例代码 static class Store private static List
  • C# 中的合并运算符?

    我想我记得看到过类似的东西 三元运算符 http msdn microsoft com en us library ty67wk28 28VS 80 29 aspx在 C 中 它只有两部分 如果变量值不为空 则返回变量值 如果为空 则返回默
  • 外键与独立关系 - Entity Framework 5 有改进吗?

    我读过了several http www ladislavmrnka com 2011 05 foreign key vs independent associations in ef 4 文章和问题 https stackoverflow
  • 等待进程释放文件

    我如何等待文件空闲以便ss Save 可以用新的覆盖它吗 如果我紧密地运行两次 左右 我会得到一个generic GDI error
  • AES 128 CBC 蒙特卡罗测试

    我正在 AES 128 CBC 上执行 MCT 如中所述http csrc nist gov groups STM cavp documents aes AESAVS pdf http csrc nist gov groups STM ca
  • 动态添加 ASP.Net 控件

    我有一个存储过程 它根据数据库中存储的记录数返回多行 现在我想有一种方法来创建 div 带有包含该行值的控件的标记 如果从数据库返回 10 行 则 10 div 必须创建标签 我有下面的代码来从数据库中获取结果 但我不知道如何从这里继续 S
  • 如何部署“SQL Server Express + EF”应用程序

    这是我第一次部署使用 SQL Server Express 数据库的应用程序 我首先使用实体 框架模型来联系数据库 我使用 Install Shield 创建了一个安装向导来安装应用程序 这些是我在目标计算机中安装应用程序所执行的步骤 安装
  • WebSocket安全连接自签名证书

    目标是一个与用户电脑上安装的 C 应用程序交换信息的 Web 应用程序 客户端应用程序是 websocket 服务器 浏览器是 websocket 客户端 最后 用户浏览器中的 websocket 客户端通过 Angular 持久创建 并且
  • Oracle Data Provider for .NET 不支持 Oracle 19.0.48.0.0

    我们刚刚升级到 Oracle 19c 19 3 0 所有应用程序都停止工作并出现以下错误消息 Oracle Data Provider for NET 不支持 Oracle 19 0 48 0 0 我将 Oracle ManagedData

随机推荐

  • 提取 Objective-c 二进制文件

    是否可以提取二进制文件 获取二进制文件背后的代码 使用类转储 您可以看到实现地址 但是是否也可以看到实现地址中的代码 有什么办法可以做到吗 您的所有代码都会编译为单个指令 并放置在可执行文件的文本部分中 编译器负责将高级语言转换为更简单的处
  • 简单的、结构类型的 XML 数据绑定(无需代码生成或反射)

    我正在寻找一个 Java 库 它允许我将 XML 编组到 Java 对象树 反之亦然 有很多库可以让我将 XML 绑定到JavaBeans由某些代码生成工具生成 但是 我不需要这些 JAXB JiBX Castor 等 我需要的是一个工具
  • 如何做 pd.get_dummies 或其他方式?

    实际上 我的问题是基于 是否有更快的方法根据条件更新数据框列值 https stackoverflow com questions 46678400 is there a faster way to update dataframe col
  • WCF 数据服务支持的 Linq

    我正在寻找与 WCF 数据服务兼容的受支持 linq 扩展方法的完整列表 通过反复试验 我发现 First Func 和 Single Func 不受支持 还有其他吗 This http msdn microsoft com en us l
  • Java - 如何检查字符串中的重复字符?

    我需要编写一个函数来检查字符串中是否有重复值并返回唯一字符的计数 如果计数大于 3 则应返回 true 如果计数小于 3 则应该为 false 这是我一直在尝试的 注意我是java新手 private boolean isFormatVal
  • SSE (SIMD):向量乘标量

    我在程序中执行的常见操作是按标量缩放向量 V s 例如 1 2 3 4 2 2 4 6 8 除了首先在向量中的每个位置加载标量 例如 mm set ps 2 2 2 2 然后相乘之外 是否有 SSE 或 AVX 指令可以执行此操作 这就是我
  • 如何从 UIView 创建 CGLayer 进行离屏绘图

    我已经阅读了我认为是 Quartz 2D 编程指南的相关部分 但找不到以下内容的答案 他们似乎在文档中没有过多谈论 iOS 我的应用程序在UIView 我时不时地必须以某种方式更新绘图 例如更改其中一个形状的填充颜色 我保留CGPathRe
  • 访问列表视图中的自定义对象

    我目前正在构建一个应用程序 该应用程序将请求发送到网络 然后解析结果并将其放入对象的 ArrayList 中 然后 该列表将填充 ListView 我想创建一个onClickListener这将使我知道单击了哪个对象 但我找不到实现此目的的
  • 如何访问 Sharepoint 2007/2010/2013 _layouts 文件夹

    我正在尝试在该位置插入一些数据 mysiteurl layouts 因为我必须使用第三方软件 该软件使用该文件夹中存储的数据 我是机器的管理员 Windows Server 2008R2 上的 Sharepoint 2010 但 Share
  • ActiveMQ - 通过命令行删除/清除所有队列

    有没有办法通过命令行 win linux 删除 清除ActiveMQ中的所有队列 我只能找到特定队列的命令 或者也许有办法通过 activeMQ 管理员来做到这一点 同样 我只找到了如何一一删除 清除队列 这可能非常乏味 Thanks 你可
  • gitlab.com SSH 连接超时

    我尝试让 Gitlab 与 SSH 一起工作 但不行 我已完成以下步骤 1 生成ssh密钥 ssh keygen t rsa C email protected cdn cgi l email protection b 4096 2 在文件
  • WPF DataGrid 虚拟化无法正常工作?

    我有一个 DataGrid 其中有一个 DataTable 设置为其 ItemsSource DataTable 包含 24 列和约 1600 行 实际上我稍后必须加载更多行 但目前这已经够麻烦的了 尽管将列和行的虚拟化设置为活动状态 Da
  • 使用 libwebsockets 编译 libuv

    我正在尝试运行与 LWS 库一起安装的 libwebsockets test server 但它不会运行 因为 lwsts 31616 libuv support not generated in 我检查过 libuv 已安装 1 8 0
  • 可以在 Try/Except 中重试/循环吗?

    我试图了解是否可以在 Try Except 调用内部设置循环 或者是否需要重构以使用函数 长话短说 在花了几个小时学习 Python 和 BeautifulSoup 后 我设法将一些代码组合在一起来抓取 URL 列表 将数据提取到 CSV
  • 向元组添加元素的有效方法

    我想向元组添加元素 我找到了两种方法 This https stackoverflow com a 16730367 3337089 and this https stackoverflow com a 1380875 3337089答案说
  • 在 Numpy 中生成对称矩阵

    我正在尝试在 numpy 中生成对称矩阵 具体来说 这些矩阵具有随机位置的条目 并且每个条目中的内容可以是随机的 沿着主对角线 我们不关心其中有哪些条目 因此我也将它们随机化 我采取的方法是首先生成一个 nxn 全零矩阵 然后简单地循环矩阵
  • 正则表达式在引号外的特定字符上分割字符串

    如何在保留带引号的字符串的同时分割这一行 gt div a more style ui url in tray value 分割的字符在哪里 gt 产生 gt div a more style ui url in tray value 目前
  • 识别哪个文件包含某些特定的头文件

    有时 对于复杂的标头结构 可能会包含一些标头 但很难分辨出来自哪里 是否有某种工具 依赖项查看器 或一种方法如何查找 包含堆栈 哪个源 哪个标头 哪个标头 包含一个特定的头文件 如果头文件被多次包含 找到第一个包含就足够了 找到所有包含是一
  • 我可以在嵌入式交互式 Python 控制台中使用 IPython 吗?

    我使用以下代码片段将其放入 Python shell 程序中 这工作正常 但我只得到标准控制台 有没有办法做同样的事情但使用IPython http ipython scipy org shell import code class Emb
  • 虚拟Qt信号?

    在查看一些 Qt C 代码时 我遇到了这个 class Foo Q OBJECT signals virtual void someSignal const QString str int n Q UNUSED str Q UNUSED n