Мне нужно использовать unique_ptr
в моем назначении C ++.
Я скачал новый компилятор TDM-GCC-4.7.1 и установил его. Затем я изменил каталог компилятора GNU GCC на путь установки в опции: Setting->Compiler...->Toolchain Executable
,
Но это не работает. Когда я определяю unique_ptr
, Произойдет ошибка: "unique pointer is not a command of 'std' "
Причина использования интеллектуального указателя заключается в обеспечении строгой безопасности исключений, что также является требованием этого назначения. Мне просто нужно использовать эту новую функцию C ++ 11 … Кроме того, я использую ОС Windows 7.
Спасибо!
В CodeBlocks вы можете установить режим C ++ 11 либо в настройках компилятора проекта, либо в глобальных настройках компилятора. Поскольку вы можете использовать его чаще, вот как вы можете изменить его глобально:
Зайдите в «Настройки» -> «Компилятор» -> (здесь должен быть список опций, во флагах компилятора) -> выберите «Пусть g ++ должен соответствовать стандарту языка C ++ 11 ISO C ++ [-std = c ++ 11]»
Вот как это можно изменить для одного проекта:
Перейдите в Project -> Параметры сборки -> (здесь должен быть список параметров, во флагах компилятора) -> Выберите «Пусть g ++ следует стандарту языка C ++ 11 ISO C ++ [-std = c ++ 11]»
Set as default
having c++11
,PS: code :: blocks версия 13.12, tdm-gcc 4.9.2
#include <memory>
-std=gnu++0x
или же -std=c++11
флаги компилятора …… все, что работаетЭто может быть поздний ответ, но для тех, кто просит об этом, изменение опции «компоновщик для динамических библиотек» с gcc на g ++ работает для меня