C++核心应用程序开发框架,开源,跨平台

C++ Core Application Development framework , Open Source , Cross Platform

本文关键字:开源 跨平台 框架 核心 应用程序开发 C++      更新时间:2023-10-16

与Qt一样,我们有c++中的核心应用程序开发框架吗。我认为qt主要用于GUI应用程序。我需要QT以外的东西,它能提供更快的运行代码。。。Visual Studio for c++是一个不错的选择,但它不是一个开源和跨平台的选择。。

坦率地说,对我来说,这听起来像是在浪费时间,并且没有明确定义应用程序的目标。没有任何框架可以解决这个问题。写下应用程序规范,目标平台列表,检查需要但缺少的功能,搜索现有库,然后使用它们。

我认为qt主要用于GUI应用程序

你错了。在Qt 4中,GUI组件是可选的。您可以自由地使用QCoreApplication而不是应用程序对象的QApplication来设计控制台应用程序。额外的好处是,您可以访问一些与GUI相关的类(但不是所有的类——许多类需要QApplication)。

它提供了更快的运行代码

让代码快速运行是您的责任。如果它运行缓慢,那么这是你的错,除非证明不是这样。至少就GUI性能而言,Qt4速度非常快。算法选择不当、内存分配例程的滥用以及许多其他因素都会对性能产生负面影响。切换到不同的框架并不能解决这些问题。与其搜索不同的工具,不如分析代码,搜索瓶颈并修复它们。

Visual Studio for c++是一个不错的选择

它不是跨平台的。它也不是一个只有框架的IDE+编译器。

跨平台

根据您的应用程序,您甚至可以在没有任何框架的情况下使用标准C++开发跨平台应用程序,同时使用CMake/Scons/Autotools进行构建过程。类Unix环境或多或少都试图遵守POSIX标准,这是可以使用的(在windows上,它要求cygwin/msys能够正常工作)。除此之外还有Boost。您甚至可以放弃C++,转而使用脚本语言来确保可移植性。这完全取决于你的目标。由于你还没有说出你正在写的内容,所以除了Boost之外,不可能推荐任何具体的内容。除了boost之外,还有几个框架(wxWidgets、FoxToolkit、GTK)可能满足您的需求,也可能不满足您的要求。

由于框架的含义还不完全清楚,您可能需要进一步澄清。无论如何,我很乐意使用boost作为通用功能的库,并使用eclipse+cdt作为IDE进行编码和调试。Boost、eclipse和cdt都是开源和跨平台的。

哪些功能应该具有框架?BOOST怎么样?它不像QT和wxWidgets那样是一个框架,但它有很多功能,如委托,即信号、线程、进程间通信、网络等。