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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
#1

Чем отличаются итераторы ::begin и ::cbegin? - C++

06.02.2014, 11:33. Просмотров 653. Ответов 4
Метки нет (Все метки)

Чем отличаются итераторы ::begin и ::cbegin? Не пойму разницы, и с английским у меня не очень.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.02.2014, 11:33     Чем отличаются итераторы ::begin и ::cbegin?
Посмотрите здесь:

а как вам это чем отличаются C++
Чем отличаются ф-ии GlobalAllocPtr() и malloc()? C++
Итераторы begin и end C++
Чем отличаются указатели от ссылок? C++
Итераторы и с чем их есть C++
Чем отличаются компиляторы? C++
чем отличаются static_cast от C++
Чем отличаются dynamic_cast и static_cast? C++
Чем отличаются операторы вывода? C++
C++ Чем отличаются эти функции?
C++ Чем отличаются статические поля от не статических?
Реализовать итераторы begin() и end() для списка C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт С++
 Аватар для ForEveR
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
06.02.2014, 11:39     Чем отличаются итераторы ::begin и ::cbegin? #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
begin возвращает для неконстантного контейнера container::iterator, cbegin - container::const_iterator. В случае константного контейнера ничем.
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
06.02.2014, 11:49  [ТС]     Чем отличаются итераторы ::begin и ::cbegin? #3
ForEveR, то есть для константного контейнера можно юзать оба итератора, а для неконстантного только ::begin, при ::cbegin выдаст ошибку?
ForEveR
Модератор
Эксперт С++
 Аватар для ForEveR
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
06.02.2014, 11:53     Чем отличаются итераторы ::begin и ::cbegin? #4
programina, Нет. cbegin в любом случае вернет const_iterator. begin вернет iterator в случае неконстатного контейнера и const_iterator в случае константного.
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
06.02.2014, 13:05  [ТС]     Чем отличаются итераторы ::begin и ::cbegin? #5
Хмм... в случае cbegin нужно обязательно использовать const_iterator вместо iterator

Добавлено через 7 минут
C++
#include <iostream>
#include <list>
 
int main ()
{
  int a[] = {1,2,3};
 
  std::list< int > mylist (a, a+3);
 
  for (std::list<int>::const_iterator it = mylist.cbegin(); it !=   mylist.cend(); ++it)
    std::cout << ' ' << *it;
}
Yandex
Объявления
06.02.2014, 13:05     Чем отличаются итераторы ::begin и ::cbegin?
Ответ Создать тему
Опции темы

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