[原创&交流]如果你学习C++,请不要选择DevCpp

clever101
博客专家认证
2010-08-05 10:41:36
链接:如果你学习C++,请不要选择DevCpp


有网友发信给我,说使用DevCpp编译一个MTL库的测试程序出现一堆莫名其妙的错误。

DevCpp我听说过,以前也下载使用过,据说号称Windows平台下的gcc。结果我用DevCpp一编译网友的程序,感觉此编译器不堪大用。

网友的测试程序是这样的:


#include <iostream>
#include <boost/numeric/mtl/mtl.hpp>

int main(int argc, char* argv[])
{
using namespace mtl;

// Define dense vector of doubles with 10 elements all set to 0.0.
dense_vector<double> v(10, 0.0);

// Set element 7 to 3.0.
v[7]= 3.0;

std::cout << "v is " << v << "\n";
return 0;
}




结果出现莫名其妙的错误,说实话它的编译错误提示极为晦涩,我基本看不懂,只好以图为证:




但是我用VS 2008 + sp1编译这个程序,则一点问题都没有。看看网友怎么评论DevCpp的吧:

Get rid of Dev-C++ and download VC++ 2008 Express. If you have any difficulties after that, let us know.
Dev-C++ has not been supported by its creators for a long time. It is horribly out of date. You might be able to just update your version of the compiler and keep the IDE as-is, but you get a really good debugger integrated with VC++ 2008 Express that really blows the competition away.

评论来自:
http://bbs.prog365.com/c-programming-on-using-mtl-matrix-template-library-in-dev-c-4.9.8.0-190-1-1.html

所以在Windows平台下学习C++,我建议你选择VS 2008及更高版本的VS,或者选择开源的CodeBlocks。




...全文
417 30 打赏 收藏 转发到动态 举报
写回复
用AI写文章
30 条回复
切换为时间正序
请发表友善的回复…
发表回复
weichaojie 2010-08-06
  • 打赏
  • 举报
回复
是否VC 2005或VC 2008能替换成Intel的编译器,这样用什么编译器就不一定与IDE绑定了。
taodm 2010-08-06
  • 打赏
  • 举报
回复
用wxdevcpp并且替换gcc到4.4的人飘过。
massice 2010-08-06
  • 打赏
  • 举报
回复
支持VS,目前用的是VS2005
cclk-1024 2010-08-06
  • 打赏
  • 举报
回复
如果VS以后能将VC独立出来该多好啊,现在太庞大了,还是VC6的IDE看着人性化
healer_kx 2010-08-06
  • 打赏
  • 举报
回复
还是VS2008比较好,VS2005也不错,VS2010我也刚刚用,也很好。
  • 打赏
  • 举报
回复
3.4.5貌似自带这个版本的。比较老的版本
devcpp已经五六年没更新了,改换了
Aniao 2010-08-06
  • 打赏
  • 举报
回复


是定位到我自己的代码的时候,哎,我重新装一次算了
jackyjkchen 2010-08-06
  • 打赏
  • 举报
回复
[Quote=引用 22 楼 aniao 的回复:]
引用 8 楼 jackyjkchen 的回复:

引用 6 楼 r3000 的回复:

引用 2 楼 ayw215 的回复:
win下的c++编译器,没有任何一个可以超过vs


我不认为是这样,VC编译器除了占了windows先天优势以外,在很多方面落后其他编译器。

除了不支持c99,vs无可挑剔


问个问题,我在DEBUG模式下,打断点后看栈里面很多结构体看里面的……
[/Quote]

一般是调试动态链接库时,运行版本和源码不一致造成,其他情况没见过
Aniao 2010-08-06
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 jackyjkchen 的回复:]

引用 15 楼 qidianzy 的回复:
引用 13 楼 clever101 的回复:
引用 10 楼 starcat 的回复:

怎么听起来C++已经像是微软的御用语言了


呵呵,微软的御用语言是C#吧。


C#是微软给别人用的,它自己还是很喜欢用C++的,必定Windows和VS是用什么开的!

C++的最大阵地肯定是windows了,可是C#并不是专给别人用的……
[/Quote]


怪不得,4G内存的新机器装了2010,觉得比08慢很多……
Aniao 2010-08-06
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 jackyjkchen 的回复:]

引用 6 楼 r3000 的回复:

引用 2 楼 ayw215 的回复:
win下的c++编译器,没有任何一个可以超过vs


我不认为是这样,VC编译器除了占了windows先天优势以外,在很多方面落后其他编译器。

除了不支持c99,vs无可挑剔
[/Quote]

问个问题,我在DEBUG模式下,打断点后看栈里面很多结构体看里面的数值显示都是奇怪的负数,我明明就是普通的int而且自己输出显示都是正常的1啊,2啊,10啊这样的。而且最后DEBUG那个栈定位到代码的行数也有几行的偏差。

这是VC本来就有的问题还是说我的VC有问题啊,我是2008。用惯了eclipse觉得这个很不能接受
ribut9225 2010-08-06
  • 打赏
  • 举报
回复
DEV断点调试的时候,没有MS方便直观

不过VS越做越大了,不如DEV小巧灵活
fancyivan 2010-08-06
  • 打赏
  • 举报
回复
而且Code::Blocks也只是IDE。

另外,Dev-C++确实很久没更新了,现在它有它的衍生版,好象叫wxDev-C++啥的,名字记不清了,只是偶然看过一眼,没用过。
fancyivan 2010-08-06
  • 打赏
  • 举报
回复
楼主,Dev-C++并不是编译器,只是一个IDE而已,它的编译器是GCC的win版本MinGW,只是它自带的版本有些低。
  • 打赏
  • 举报
回复
vc6.0的路过..
luzhiwei512 2010-08-06
  • 打赏
  • 举报
回复
VS2010的IDE是C#开发?
jackyjkchen 2010-08-06
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 qidianzy 的回复:]
引用 13 楼 clever101 的回复:
引用 10 楼 starcat 的回复:

怎么听起来C++已经像是微软的御用语言了


呵呵,微软的御用语言是C#吧。


C#是微软给别人用的,它自己还是很喜欢用C++的,必定Windows和VS是用什么开的!
[/Quote]
C++的最大阵地肯定是windows了,可是C#并不是专给别人用的,VS2010的IDE是C#开发
qidianzy 2010-08-06
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 clever101 的回复:]
引用 10 楼 starcat 的回复:

怎么听起来C++已经像是微软的御用语言了


呵呵,微软的御用语言是C#吧。
[/Quote]

C#是微软给别人用的,它自己还是很喜欢用C++的,必定Windows和VS是用什么开的!
skyworth98 2010-08-06
  • 打赏
  • 举报
回复
不要用老眼光看问题,呵呵

[Quote=引用 6 楼 r3000 的回复:]
引用 2 楼 ayw215 的回复:
win下的c++编译器,没有任何一个可以超过vs


我不认为是这样,VC编译器除了占了windows先天优势以外,在很多方面落后其他编译器。
[/Quote]
clever101 2010-08-06
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 starcat 的回复:]

怎么听起来C++已经像是微软的御用语言了
[/Quote]

呵呵,微软的御用语言是C#吧。
clever101 2010-08-06
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 weichaojie 的回复:]

是否VC 2005或VC 2008能替换成Intel的编译器,这样用什么编译器就不一定与IDE绑定了。
[/Quote]

老大,Intel的编译器是要钱的,而且价钱不菲。
加载更多回复(10)

64,639

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧