dnbc66

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

  一开始学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的标准。

posted on 2016-04-04 14:07  dnbc66  阅读(7359)  评论(0编辑  收藏  举报