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

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

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

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

дошел до конструктора vector::vector(input_iterator start, input_iterator end), правильно я понимаю, что можно инициализировать вектор значениями от a до b в момент объявления?
Если да, то каким образом это делается практически?
Если можно пример кода с такой инициализацией.
Спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.02.2013, 12:02     Инициализация вектора значениями при объявлении
Посмотрите здесь:

C++ Инициализация вектора массивом
Инициализация вектора в стиле С++0х C++
C++ Инициализация вектора
Инициализация вектора структур C++
C++ Инициализация при объявлении и перегрузка operator=
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
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
Может я туплю, но все равно не понял.
Евгений М.
1033 / 974 / 53
Регистрация: 28.02.2010
Сообщений: 2,817
Завершенные тесты: 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
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
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());
Евгений М.
1033 / 974 / 53
Регистрация: 28.02.2010
Сообщений: 2,817
Завершенные тесты: 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++
C++ Инициализация вектора статическим массивом в конструкторе класса

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

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

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