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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 5.00
Magsitr
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 6
#1

Инициализация вектора значениями при объявлении - C++

03.02.2013, 12:02. Просмотров 1744. Ответов 7
Метки нет (Все метки)

Добрый день!

Изучаю c++, сейчас разбираюсь с векторами.

дошел до конструктора vector::vector(input_iterator start, input_iterator end), правильно я понимаю, что можно инициализировать вектор значениями от a до b в момент объявления?
Если да, то каким образом это делается практически?
Если можно пример кода с такой инициализацией.
Спасибо!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
0x10
2456 / 1628 / 238
Регистрация: 24.11.2012
Сообщений: 4,003
03.02.2013, 12:08     Инициализация вектора значениями при объявлении #2
http://en.cppreference.com/w/cpp/con.../vector/vector
Magsitr
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 6
03.02.2013, 12:13  [ТС]     Инициализация вектора значениями при объявлении #3
Может я туплю, но все равно не понял.
Евгений М.
1034 / 975 / 53
Регистрация: 28.02.2010
Сообщений: 2,818
Завершенные тесты: 2
03.02.2013, 12:19     Инициализация вектора значениями при объявлении #4
Цитата Сообщение от Magsitr Посмотреть сообщение
дошел до конструктора vector::vector(input_iterator start, input_iterator end), правильно я понимаю, что можно инициализировать вектор значениями от a до b в момент объявления?
Не понял вопрос. Откуда a и b взяты?
Magsitr
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 6
03.02.2013, 12:24  [ТС]     Инициализация вектора значениями при объявлении #5
Цитата Сообщение от Евгений М. Посмотреть сообщение
Не понял вопрос. Откуда a и b взяты?
Насколько я понял, что с помощью этого конструктора я могу инициализировать вектор значениями, например от 1 до 10 при объявлении, или я что-то не так понял?
0x10
2456 / 1628 / 238
Регистрация: 24.11.2012
Сообщений: 4,003
03.02.2013, 12:30     Инициализация вектора значениями при объявлении #6
Конструктор принимает два итератора - начало и конец контейнера, которым можно проинициализировать вектор. Варианты:
C++
1
2
3
int myints[] = {16,2,77,29};
std::vector<int> fifth (myints, myints + sizeof(myints) / sizeof(int) );
std::vector<int> fifth2(fifth.begin(), fifth.end());
Евгений М.
1034 / 975 / 53
Регистрация: 28.02.2010
Сообщений: 2,818
Завершенные тесты: 2
03.02.2013, 12:43     Инициализация вектора значениями при объявлении #7
Цитата Сообщение от Magsitr Посмотреть сообщение
я что-то не так понял?
Наверно не так понял.

Грубо говоря после вызова конструктора копируется элементы контейнера, итераторы которого (start, end в нашем случае) являются параметрами вызываемого конструктора.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.02.2013, 12:45     Инициализация вектора значениями при объявлении
Еще ссылки по теме:

Инициализация массива при объявлении C++
Инициализация вектора C++
Инициализация в объявлении константных статических (const static) членов-данных класса. C++
Инициализация членов в объявлении класса C++
C++ Вектора. Их инициализация и использование в ветвлениях

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

Или воспользуйтесь поиском по форуму:
Magsitr
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 6
03.02.2013, 12:45  [ТС]     Инициализация вектора значениями при объявлении #8
Спасибо, теперь разобрался.
Yandex
Объявления
03.02.2013, 12:45     Инициализация вектора значениями при объявлении
Ответ Создать тему
Опции темы

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