我已经安装了 cygwin 并用它在 Windows 上编写 C++。
我更喜欢在 Windows 中编写我的代码(这些是分配),但代码还需要能够在 Linux 上运行。虽然代码在大多数情况下都可以很好地移植,但似乎有些东西在 Windows 上有效,但在 Linux 上会导致段错误(例如引用未初始化的变量和指针)。
我在 Windows(通过 C:\cygwin\bin\g++.exe)和 Linux 中都使用 g++ 进行编译,我不明白为什么在前者中工作的代码在后者中失败(或者为什么它们的行为不一样)。如何让我的代码在两者中的行为完全相同?这甚至可能吗?
尽管我是 C++ 菜鸟,但我没有使用任何特定于 Windows 的库,所以我可能会误解一些简单/重要的事情。最后我知道使用未初始化的变量和指针是不好的——我想在 Windows 中使用它们会导致分段错误。