gpt4 book ai didi

qt - 从 QWidget 继承并使类成为模板

转载 作者:行者123 更新时间:2023-12-04 12:50:00 25 4
gpt4 key购买 nike

我希望这不是一个愚蠢的问题,但我对模板非常缺乏经验,这个问题超出了我的想象。我从事一个严重依赖 QT Designer 进行 GUI 设计的项目,我想提供一个特殊的 QWidget 子类,它允许抽象与复杂服务机制的交互。此小部件需要特定于类的信息,以解析服务。编码本身是在 Visual Studio 2008 中完成的。

所以我想要创建的是一个模板化的 QWidget 子类。以我有限的知识,我尝试在类里面拍下通常的模板语句:

template <class T>
class QmitkMyWidget :public QWidget

不出所料,这并不容易。生成的 moc 类起作用。
error PRJ0019: A tool returned an error code from "Generating Qmitk/moc_QmitkMyWidget.cxx"

这对我来说似乎是合乎逻辑的,因为我“没有告诉他们该做什么”。我想我必须在 QT Designer 中指定模板,但我真的不知道如何,不幸的是,搜索在 QT Designer 中找到了大量代码模板的结果,但没有关于通用编程概念。我真的很感激任何提示 && ||有用的资源/文章。谢谢你的时间!

编辑:第一个代码中的愚蠢错字=/

最佳答案

我已经确认这是不可能的。
来源:Limitations mof the moc concept

要点是,mocs 是经过预处理的,但模板仅在编译时被翻译成实际代码。

编辑:我可以补充一点,而不是使类本身模板化,我现在只模板化公共(public)函数,到目前为止效果很好,尽管它当然需要消费者在每次调用函数时输入声明。

关于qt - 从 QWidget 继承并使类成为模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11560489/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com