Форум программистов, компьютерный форум CyberForum.ru

/Константный итератор - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.77
List2006
24 / 16 / 2
Регистрация: 19.12.2009
Сообщений: 366
16.09.2011, 18:48     /Константный итератор #1
Нужно создать константный итератор.
1) Какой из вариантов будет правильней (в коде их отличие - у второго модификатор const)
Первый вариант:
C++
1
      QVector<QString>::const_iterator it_end_vectStr = vectStr.constEnd();
Второй вариант:
C++
1
const QVector<QString>::const_iterator it_end_vectStr = vectStr.constEnd();
2) Второй вопрос, для компилятора два этих определения одинаковые, есть ли разница с точки зрения стандарта?

Добавлено через 4 минуты
как я понимаю первый вариант позволяет получать элементы не изменяя его, и можно его перебирать (ну например ++ или --)

Второй вариант предоставляет только последний элемент (за последним), и не позволяет не модифицировать и не проходит по контейнеру (например не разрещает ++ или -- )

Да?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.09.2011, 18:48     /Константный итератор
Посмотрите здесь:

C++ Статический константный объект класса
C++ Константный указатель на целое
Константный указатель C++
Что значит константный указатель на объект, указатель на константный объект, и как это можно использовать? C++
константный метод и указатель this C++
Статический константный член-класса C++
Константный метод и константный аргумент в методе C++
C++ Константный указатель на константные данные (указатели)

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
sandye51
программист С++
 Аватар для sandye51
677 / 579 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
16.09.2011, 21:36     /Константный итератор #2
Да?
да

1) Правильный первый вариант.

2) какого еще стандарта?
просто 2 разных объявления, не константа и константа.
а контекст самого объекта (константный итератор) это второстепенный вопрос
Yandex
Объявления
16.09.2011, 21:36     /Константный итератор
Ответ Создать тему
Опции темы

Текущее время: 13:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru