0

我正在 Qt 中设计一个用户界面,出于长寿的原因,我不想在未来的构建中使用 Qt Meta-Object Compiler。我知道 MOC 会解析标准 C++ 代码中的某些宏,并根据这些宏生成 C++ 代码。

我想知道的是:这个生成的代码的文档在哪里?我想将生成的代码直接写到我的相关类中。虽然现在这可能很麻烦,但如果 Qt 消失并且 MOC 不复存在,它将避免任何问题,从而使 UI 在长期内更加稳定。

谢谢!

编辑 1: 我正在 Visual Studio(不是 Qt Creator)中为不基于 Qt 框架的 C++ 应用程序设计基于 Qt 的 UI。我希望能够分发可以构建为纯 C++ 的代码,其中 Qt 代码链接自将被打包的特定库。我希望能够在未安装 Qt 的系统上构建此代码。因此希望避免 MOC。我不想冒犯任何 Qt 粉丝,Qt 很棒。但是,我在这个项目上需要一些不同的东西,所以“只使用 MOC”的建议根本没有帮助。

编辑2:当我错了时,我有足够的能力承认。经过更多的思考和研究,显然不值得尝试我计划做的事情。我只需要保存 MOC 生成的代码并分发它。谢谢大家。

4

2 回答 2

5

将 moc 输出逐字放入您的代码中会使您的代码不那么可移植,而不是更多,因为 moc 输出格式比源不兼容的 Qt 主要版本(当前版本 5)更频繁地更改(当前版本 67)。

于 2013-02-22T22:28:35.157 回答
0

正如这里的每个人都向我指出的那样,试图绕过 MOC 似乎总体上是不值得的。我的解决方案是将 MOC 生成的源文件保存在源代码管理中,并将它们与主要应用程序代码一起打包以进行分发。

于 2013-02-23T00:36:55.707 回答