c++ - 从 Dev-C++ 到 VC++

标签 c++ visual-c++ dev-c++

是的,这是一个菜鸟问题......

到目前为止,我一直在我的所有项目中使用 Dev-C++,但它已经过时了,所以库在哪里。所以我打开了 Visual C++ 拷贝并复制了代码。当我编译时,会弹出一百万个错误,就好像我的代码中的每一行都是狗屎一样。我不想从头开始这个项目。

问题:为什么Dev-C++和VC++的编译方式不同???我听说他们使用不同的编译器,但它仍然是 C++。我看到的第一个错误是 const char* 和 std::string 之间的比较无效。

不管怎样,有没有什么办法可以让VC++对编程不那么严格,就像Dev-C++一样。或者我应该了解 Dec-C++ 和 VC++ 编译器之间的一些主要差异。

大多数错误似乎与 std::string 相关,或 LPCWSTR (我可以自己修复)。

很抱歉这个非常广泛且无用的话题,我知道。

-亚历克斯

最佳答案

首先,一些注意事项,因为许多 Dev-C++ 用户很困惑(我曾经是)

Dev-C++不是编译器。编译器是 GCC(或者更准确地说,是 GCC 的修改版本,以便它可以在 Windows 上运行:MinGW)。 Dev-C++ 是一个 IDE:一个带有附加按钮的文本编辑器,单击该按钮时可以使用适当的参数调用 MinGW。

仅此而已。

Visual Studio 也是如此:Visual Studio 是 IDE,它调用 Visual 编译器 (vc.exe),它实现 VC++,VC++ 是 Microsoft 对 C++ 标准的实现。

第二:这不是一个菜鸟问题。您已经发现了可移植性问题,这是 C 和 C++ 中令人沮丧的一个重要领域。 StackOverflow 上的很多问题都是由于可移植性问题造成的(代码可以在 Windows 上运行,但不能在 Linux 上运行,等等)。

一般经验法则是 1) 将编译器的警告级别设置为最高,2) 在您的目标平台上并行开发。

希望这有帮助。

关于c++ - 从 Dev-C++ 到 VC++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3555938/

相关文章:

c++ - SetTokenInformation 和权限

c++ - 为什么在我的 C++ mips 反汇编程序中,没有打印出某些内容?

c++ - boost::get boost::variant 没有给出正确的输出

c++ - CString 运算符 "+="和 "+"之间的不同行为

c++ - 从位图加载纹理

c - 如何让 Dev-C++ 从 C 代码生成英特尔程序集?

python - 从 Keras 保存初始化的 tensorflow 图

formatting - 关于在 Dev C++ 中格式化字体

c++ - 不要用 system() 打开控制台输出

c++ - 注释函数的内容,但保持对函数的调用不变。编译器是否发现不编译函数?