gpt4 book ai didi

c++ - 跨平台 C++ 工具链

转载 作者:行者123 更新时间:2023-11-27 23:25:57 25 4
gpt4 key购买 nike

我是一名顽固的 .NET 开发人员,在 C++ 方面的经验有限。我非常熟悉解释型语言(和脚本语言)跨平台工作的愉快程度,但是 C++ 呢?

我意识到 GCC/GPP 和其他一些编译器可以通过正确的编译器标志在多平台上工作,而且我知道 STL 在编译器之间是标准化的,但我还缺少什么?我需要做音频输入/输出、高精度定时器,我需要做多线程。我认为 STL 不支持这些东西,所以我需要某种类型的跨平台库,对吗?我应该使用哪一个?

我的目标是支持最新的 Mac 和 Windows 平台。这是一个共享框架/sdk,不会有 UI。我计划用原生语言编写 UI,例如 Objective-C/Cocoa 和 .NET/WPF(它们都具有出色的原生 UI 支持)。

那么我的工具链应该是什么样的?我应该使用 GCC/GPP 还是 MinGW?我应该集成哪些其他可以跨平台运行的“库”?我想将我的构建环境设置为“正常工作”,这样我就可以构建一个 Mac 兼容的二进制文件和一个 Windows 兼容的二进制文件(32 位和 64 位)。我该怎么做?

在这一点上,我将为每个平台编写代码,以便我可以与这个我的 C++ 多平台框架 sdk/api 东西互操作。在 Windows 中,我认为这看起来像一个托管 DLL,对吗?关于如何在 Mac 上执行此操作有什么想法吗?

有什么建议或建议吗?

感谢您的建议,布雷特

最佳答案

1) 您的真正目标应该是编写可移植的 C++——您可以通过保持语言的简洁使用来获得可移植性,而不是通过使用特定的编译器。

2) 您想要的某些功能(例如音频输入/输出)本质上是平台相关的。但是,您可以完全隔离特定模块内的平台依赖性,并有条件地在每个平台上编译一组平台支持文件。

3) 可以使用标准库以独立于平台的方式完成诸如多线程之类的事情。

关于c++ - 跨平台 C++ 工具链,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9526336/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com