C++11 строковые свойства и версия gcc
В настоящее время я использую строковые свойства C++ и, в частности, его функцию pop_back(). Как написано в заголовке, это приводит к ошибке (та же ошибка видна в другой теме):
‘std::string’ has no member named ‘pop_back’
Но что странно, я уже использую специфические свойства C++11 (как "auto" для итераторов и т. Д.) И никогда не получаю никакой ошибки.
Для информации я строю свой код под Ubuntu 12.04 с помощью gcc 4.6.3. Для меня эта версия достаточно хороша. Я также поставил флаг "-std= C++0x", чтобы я действительно не знал, в чем смысл?!
Более того, я видел в предыдущей теме, что сейчас лучше использовать флаг "-std= C++11". Но когда я пытаюсь это сделать, появляется следующая ошибка:
unrecognized command line option ‘-std=c++11’
Заранее благодарю за объяснения.
1 ответ
В gcc 4.6 (который имел только частичную поддержку нового стандарта) опция -std= C++0x, потому что в то время дата выпуска (то есть, 2011) была еще неизвестна.