2012-10-09 76 views
3

我需要在我的C++任務中使用unique_ptr如何更新code :: blocks以使用TDM-GCC?

我下載了一個新的編譯器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.

謝謝!

+10

分配?你在學校?一所使用現代編程工具和技術的學校?這是聞所未聞的!另外,請顯示您的代碼。 –

+1

你也可以發佈你想要使用它的代碼嗎? – Collin

+1

你用命令行選項'-std = C++ 11'調用g ++嗎? – Praetorian

回答

2
  1. 記住#include <memory>
  2. 添加-std=gnu++0x-std=c++11編譯器標誌......無論工作
5

在代碼塊,你可以設置C++ 11模式無論是在項目的編譯器設置或全局編譯設置。因爲你可能會更頻繁地使用它,所以下面是你如何在全局中改變它:

轉到設置 - >編譯器 - >(這裏應該有編譯器標誌中的選項列表) - >選擇「讓g ++遵循C++ 11的ISO C++語言標準[-std = C++ 11]」

這裏是如何改變單個項目:

轉到項目 - >構建選項 - >(應該有在編譯器標誌中選擇列表) - >選擇「讓g ++遵循C++ 11 ISO C++語言標準[-std = C++ 11]」

3
  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. 更改編譯器設置爲having c++11

PS:代碼::塊版本13.12,TDM-GCC 4.9.2