c++ - 在 Mingw 上编译的 C/C++ 代码会保证与 GCC 完全兼容(在 linux 和 Mac 上)

标签 c++ gcc mingw compatibility

我想生成交叉编译器兼容的 C++ 代码。 我编写了一些有点“异国情调”的代码,将 C++ 语言推向灰色、怪异、神秘的领域。

考虑到我的代码只依赖于 boost 和 STL,问题是检查代码兼容性,而不是库兼容性:

我的代码同时编译 msvc 和 Mingw 是否能确保我的代码 100% 与每个平台上的 GCC 兼容?

最佳答案

完全没有。

使用 MSVC 和 MinGW 编译您的代码可确保您的代码与 Microsoft 的 C/C++ 库兼容。我知道你只是在谈论代码兼容性,但这样的事情不存在。如果您将 C++ 插入灰色区域,则很可能相同的代码会根据编译平台的不同而产生不同的结果。

保证完全兼容的最好也是唯一的方法是在两个平台上编译和测试它。

尽管将 GCC 与 -std=c++0X -Wall -Wextra -pedantic(或任何其他 std 版本)一起使用并消除所有警告将对代码质量有一个很好的了解.

关于c++ - 在 Mingw 上编译的 C/C++ 代码会保证与 GCC 完全兼容(在 linux 和 Mac 上),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4081904/

相关文章:

C++ 在尝试比较字符串 "=="或 CString.Find() 时什么更好

python - 在 Mint 上安装 M2Crypto 时出现问题

c - 确定体系结构是 32 位还是 64 位的优雅而安全的方法

c - 对 `__lzcnt16 的 undefined reference ?

c++ - std::thread 不是使用 Eclipse Kepler MinGW 命名空间 std 的成员

c - 有没有办法在运行用 MinGW 编译的程序时生成 gdb 可读的核心转储?

c++ - CreateProcess 以用户 : "NT AUTHORITY/Network Service" without knowing the credentials? 身份运行

c++ - 如何在 C++/OpenCv 中的一个数组中存储多个 RGB 图像

C++ 指针 vector 如何影响性能?

c++ - Mingw-64 with Netbeans(无法正确启动 0xc000007cb)