代码之家  ›  专栏  ›  技术社区  ›  CiNN

制作可移植代码

  •  3
  • CiNN  · 技术社区  · 16 年前

    尽管对开源项目大惊小怪,为什么仍然没有一个强大的标准来支持您生成可移植的代码(我的意思是 C/C++ Java C# ) 每个人都在做自己的汤。

    Apache Portable Runtime .

    7 回复  |  直到 9 年前
        1
  •  5
  •   Mladen Janković    16 年前

    是的,没有标准,但是图书馆 夸脱 促进

        2
  •  3
  •   Stefan Mai Stefan Mai    16 年前

    wxwidgets是大多数窗口管理器的本地GUI小部件上的一个很好的抽象层。

        3
  •  1
  •   jfs    16 年前

    我认为没有任何一个库得到任何人的同意,主要原因是每个人的需求都不同。当你想包装系统库时,你通常需要对用例是什么做一些假设,除非你想让包装器变得巨大而无法使用。我认为这可能是没有单一、通用的跨平台运行时的主要原因。

    对于GUI,原因可能是每个平台都有自己的UI约定,你不能编写一个适合所有人的GUI,你只会得到一个只适合一个甚至根本不适合的GUI。

        4
  •  1
  •   dwestbrook    16 年前

    从逻辑上说,一个操作系统所有方面的完整包装器就是一个完整的虚拟运行时。你也可以自己做编程语言。

        6
  •  1
  •   Mathieu Pagé    16 年前

    C语言和C++语言是标准语言。如果你在编码时严格遵循他们的规则(这意味着不使用特定于供应商的扩展),你的代码应该是可移植的,你应该能够在任何操作系统上用任何现代编译器编译它。

    然而,C和C++没有GUI库,如java或C语言,但是存在一些免费或商业的GUI库,允许您编写可移植的GUI应用程序。

    我认为最受欢迎的是 Qt (商业)和 wxWidgets wikipedia

    还有boost,但没有GUI库 boost 对于C++的STL来说是一个很好的补充。事实上,一些提升库将在下一个C++标准中添加。

        7
  •  0
  •   Steve Pitchers D V Santhosh Kiran    16 年前