C++ 编程/代码/API/通用包装器
外观
通用 GUI/API 包装器是编程库,它们提供统一的平台无关接口 (API) 到操作系统,而不管底层平台是什么。这些库极大地简化了跨平台软件的开发。
使用包装器作为可移植性层将为应用程序提供一些或所有以下好处
- 独立于硬件。
- 独立于操作系统。
- 独立于对特定版本的更改。
- 独立于 API 样式和错误代码。
跨平台编程不仅仅是 GUI 编程。跨平台编程处理 C++ 标准语言未指定的代码部分的最低要求,因此程序可以在不同的硬件平台上编译和运行。
以下是一些跨平台 GUI 工具包
- Gtkmm - C GUI 库 GTK+ 的接口。它不是跨平台设计的,而是多平台的,即可以在许多平台上使用。
- Qt (http://qt-project.org) - 一个跨平台的(Qt 是 Linux KDE 桌面环境的基础,并支持 X Window System (Unix/X11)、Apple Mac OS X、Microsoft Windows NT/9x/2000/XP/Vista/7 和 Symbian OS),它是一个面向对象的应用程序开发框架,广泛用于开发 GUI 程序(在这种情况下它被称为小部件工具包),以及开发非 GUI 程序,如控制台工具和服务器。它被用于许多商业应用程序,例如 Google Earth、Linux 版 Skype 和 Adobe Photoshop Elements。根据 LGPL 或商业许可证发布。
- wxWidgets (http://wxwidgets.org/) - 一个小部件工具包,用于使用一个代码库为 Win32、Mac OS X、GTK+、X11、Motif、WinCE 等平台上的跨平台应用程序创建图形用户界面 (GUI)。它可以从 C++、Python、Perl 和 C#/.NET 等语言中使用。与其他跨平台工具包不同,wxWidgets 应用程序看起来和感觉起来是原生的。这是因为 wxWidgets 使用平台自身的原生控件,而不是模拟它们。它也很广泛、免费、开源且成熟。wxWidgets 不仅仅是一个 GUI 开发工具包,它还提供用于文件和流、应用程序设置、多线程、进程间通信、数据库访问等的类。
- FLTK “快速轻量级工具包”