3 / 3 / 4
Регистрация: 31.01.2013
Сообщений: 98
|
||||||
1 | ||||||
Цикл for с двоеточием10.06.2014, 19:39. Показов 26165. Ответов 6
Метки нет (Все метки)
Подскажите, пожалуйста, что это за синтаксис цикла for? Как работает?
0
|
10.06.2014, 19:39 | |
Ответы с готовыми решениями:
6
Создать программу по всем 3 видам циклов...цикл с параметром,цикл с условием,цикл,и цикл с предусловием... Конструктор с двоеточием Запрос с двоеточием Атрибуты XML с двоеточием |
Модератор
5202 / 2084 / 406
Регистрация: 06.01.2013
Сообщений: 4,794
|
|
10.06.2014, 19:40 | 2 |
Как foreach в других языках. Добавился в стандарте C++11
0
|
3 / 3 / 4
Регистрация: 31.01.2013
Сообщений: 98
|
|
10.06.2014, 20:04 [ТС] | 3 |
Так он работает как обычный for? Или у него есть особенность?
0
|
1674 / 1046 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
||||||
10.06.2014, 20:21 | 4 | |||||
Сообщение было отмечено CMson как решение
Решение
Да, у него есть особенность. Одна из мозгоразрывающих штучек, подаренных нам C++11 (наряду с волшебными final и override), зависимость языковой конструкции от стандартной библиотеки. Эта разновидность цикла зависит от функций std::begin и std::end.
Синтаксис такой: слева идентификатор для работы с элементом контейнера, справа контейнер. auto автоматически выведет тип, но можно указать и вручную. При объявлении со знаком & (без const) можно изменять содержимое контейнера, без этого знака в идентификатор будут запихивать копии элементов. Приведённый в примере цикл превращается вот в такое:
3
|
3 / 3 / 4
Регистрация: 31.01.2013
Сообщений: 98
|
|
10.06.2014, 20:25 [ТС] | 5 |
Спасибо, теперь понятней
0
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
||||||
10.06.2014, 21:34 | 6 | |||||
Nick Alte, если обратиться к стандарту то конструкция разворачивается немного иначе:
0
|
1674 / 1046 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
|
11.06.2014, 20:59 | 7 |
Это, конечно, всё хорошо и правильно, но по сути человек, для которого эта разница приобретает практическое значение, заплыл в очень опасные воды: либо меняет контейнер во время перебора элементов, либо связался с контейнером, который чересчур тяжело вычисляет end.
0
|
11.06.2014, 20:59 | |
11.06.2014, 20:59 | |
Помогаю со студенческими работами здесь
7
Парсинг XML с двоеточием Создать папку с двоеточием Заменить каждую запятую двоеточием Условие с двоеточием. Тернарная условная операция Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |