我对Qt有点新鲜。我已经用C ++编程了很长一段时间。
我想在Qt / C ++中创建一个应用程序,因为它很容易创建GUI。我想知道我可以在本机C ++中编写C ++类并在我的Qt应用程序中使用它。
我想在Qt中编写GUI并使用我的本机C ++代码而不是Qt / C ++进行所有处理。是否可以在本机C ++中编译DLL,然后在QtC ++应用程序中加载和使用它?
我真的想用C ++编写GUI应用程序。
答案 0 :(得分:3)
与“Qt / C ++”相比,没有“本地C ++”这样的东西,所以这个问题没有多大意义。所有核心Qt代码都是使用本机C ++编译的,就像任何使用Qt的C ++应用程序一样。
正如JBentley已适当注意到:
[你可能]因为Qt使用的代码生成工具而感到困惑,比如moc [或uic]。那些并不意味着C ++本身编译,而Qt则不编译。所有这些工具都提供了一种方便的方法来生成框架所依赖的大量锅炉代码,这样程序员就可以假装它们不存在并使用像Qt的插槽和信号这样的东西。你编译和链接的最终代码是普通的C ++,调用你使用过的Qt库(也就是C ++)。
如果你问的是“我是否被迫在我的应用程序的所有部分使用Qt类”,那么没有 - 没有人强迫你这样做。如果您已经使用boost或标准C ++库类编写了部分应用程序,那就没关系。
您必须了解Qt具有模块化设计并提供了许多非GUI功能。您可以在代码的非gui部分中使用非gui模块。它是一个相当干净和通用的应用程序开发框架。例如,将它用于各种互联网服务器应用程序非常好。
以下Qt模块适用于非gui开发:
答案 1 :(得分:0)
您可以使用任何您想要的C ++代码。在我的日常工作中,我实际上对同一个思维过程有疑问。首先,您需要了解Qt使用普通C ++和特殊工具来创建一组强大的库。
稍后回来,您将需要了解有关以下项目的更多信息:
还有其他一些事情,但这些领域的知识将让你做一些体面的桌面应用程序。我最喜欢的参考资料是较旧的,但仍然是一个好东西:“使用Qt4进行C ++ GUI编程”http://www.amazon.com/Programming-Edition-Prentice-Software-Development/dp/0132354160
是的QT4是“旧的”而且QT5已经有一段时间了......但是这本书为你能够添加信息提供了坚实的基础。