如何更新code :: blocks以使用TDM-GCC?

时间:2012-10-09 21:25:44

标签: c++ codeblocks

我需要在我的C ++作业中使用unique_ptr

我下载了一个新的编译器TDM-GCC-4.7.1并安装了它。然后我将GNU GCC Compiler的目录更改为选项中的安装路径:Setting->Compiler...->Toolchain Executable

但它不起作用。当我定义unique_ptr时。将出现错误:"unique pointer is not a command of 'std' "

使用智能指针的原因是提供强大的异常安全性,这也是此分配的要求。我只需要使用C ++ 11的这个新功能......另外,我使用的操作系统是Window 7。

谢谢!

4 个答案:

答案 0 :(得分:5)

在CodeBlocks中,您可以在项目编译器设置或全局编译器设置中设置C ++ 11模式。由于您可能更频繁地使用它,因此以下是全局更改的方法:

转到设置 - >编译器 - > (这里应该有编译器标志中的选项列表) - >选择“让g ++遵循C ++ 11 ISO C ++语言标准[-std = c ++ 11]”

以下是如何为单个项目更改它:

转到项目 - >构建选项 - > (这里应该有编译器标志中的选项列表) - >选择“让g ++遵循C ++ 11 ISO C ++语言标准[-std = c ++ 11]”

答案 1 :(得分:5)

  1. 下载最新的tdm-gcc http://tdm-gcc.tdragon.net
  2. 设置 - >编译器,所选编译器[GNU GCC编译器]复制并创建新配置[GNU GCC编译器4.9.2]
  3. 详细配置 detail configuration image
  4. 单击Set as default
  5. 将新编译器配置设置为默认值
  6. 将编译器设置更改为having c++11
  7. PS:code :: blocks ver 13.12,tdm-gcc 4.9.2

答案 2 :(得分:2)

  1. 请记住#include <memory>
  2. 添加-std=gnu++0x-std=c++11编译器标志......无论哪个有效

答案 3 :(得分:0)

这可能是一个较晚的答案,但是对于任何需要此答案的人来说,将选项“动态库链接器”从gcc更改为g ++对我来说都是可行的