一开始学C++的时候老师推荐的就是Dev C++这个IDE,用起来感觉还不错,使用起来比较简单,而且属于比较轻量级的,不怎么占用内存;缺点可能就是调试功能没有项VS那种大型IDE齐全和好用,不过对于一个新手来说绝对足够了。
最近在一些工程中需要用到智能指针的库,比如说auto_ptr以及boost里面的share_ptr、unique_ptr等。单独只使用auto_ptr时不会出现错误,但是当用到share_ptr或者是unique_ptr时编译总是不能通过:
原因就是“当前域内找不到shared_ptr的声明”,且上述错误是在引入<memory>也会发生的。上网查了一下,原来Dev C++默认是不支持c++11新标准的,而shared_ptr和unique_ptr是c++11新标准,而auto_ptr属于c++98标准(Dev默认支持,现在废弃使用auto_ptr)。
解决方案也很简单,在菜单栏点开Tools -> Compile Options
加上圈住的编译指令即可让编译器支持c++11的标准。