Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗cpSpItCI 49 of 696 menu
◀ ▶

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

Когда контейнер нельзя менять через позицию, берут константный итератор.

Функция cbegin на векторе открывает первую позицию только для чтения: значение видно, присваивание через звездочку не компилируется.

Запишем вектор и выведем первый элемент через константный итератор:

std::vector<int> v = {11, 22}; auto cit = v.cbegin(); std::cout << *cit << "\n"; // *cit = 0; // ошибка компиляции

Строка с присваиванием закомментирована: при раскомментировании компилятор сообщит об ошибке. Для обхода без изменений контейнера удобно держать cbegin и cend.

Объявите вектор из двух целых. Пройдите все позиции от cbegin до cend и выведите сумму элементов, не изменяя контейнер.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить