Range-based for-loops, C++11 |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
Range-based for-loops, C++11 |
Игорь |
11.11.2011 16:57
Сообщение
#1
|
Пионер Группа: Пользователи Сообщений: 56 Пол: Мужской Репутация: 2 |
В C++ Annotations есть условный пример такого цикла, я написал свой вариант, но ни один из компиляторов его не принял. В чём дело?
Вот что я делал: [clang++ prog.cc -o prog] : ругается, что пропущена ';' [g++ prog.cc -o prog] : видит цикл, но говорит, что используется не тот стандарт (С++98), однако опцию -std=c++11 не распознаёт. Все компиляторы, вроде должны поддерживать range-based циклы. P.S.: Как вы считаете C++ Annotations это вообще верный выбор для изучения C++ или стоит найти что-то ещё? Сообщение отредактировано: Игорь - 11.11.2011 19:48 |
IUnknown |
11.11.2011 17:41
Сообщение
#2
|
a.k.a. volvo877 Группа: Пользователи Сообщений: 1 013 Пол: Мужской Репутация: 627 |
Цитата Все компиляторы, вроде должны поддерживать range-based циклы. Далеко не все. GCC, скажем, поддерживает их только начиная с 4.6, в 4.5 их близко нет... Попробуй -std=c++0x, если у тебя 4.6А вообще - вот таблицы, показывающие, какие из новых плюшек в какой версии GCC реализованы: C++0x/C++11 Support in GCC Сообщение отредактировано: IUnknown - 11.11.2011 17:41 |
Игорь |
11.11.2011 19:58
Сообщение
#3
|
Пионер Группа: Пользователи Сообщений: 56 Пол: Мужской Репутация: 2 |
Ой, а я не обратил внимания, что только в gcc 4.7 станет доступна опция -std=c++11.
С -std=c++0x всё отлично компилируется. |
Текстовая версия | 27.09.2024 22:35 |