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

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

Войти
Регистрация
Восстановить пароль
 
theadamo86
7 / 7 / 0
Регистрация: 14.09.2013
Сообщений: 168
#1

Инициализация vector - C++

12.10.2013, 01:00. Просмотров 1026. Ответов 6
Метки нет (Все метки)

При создание вектора, пытаюсь сразу задать начальные значения:
C++
1
std::vector<int> c{0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
но компилятор (MinGW 4.8) выдает ошибку:
ошибка: in C++98 'c' must be initialized by constructor, not by '{...}'
std::vector<int> c{0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
ошибка: no matching function for call to 'std::vector<int>::vector(<brace-enclosed initializer list>)'
Что я делаю не так? Этот код я взял отсюда.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
12697 / 7171 / 800
Регистрация: 27.09.2012
Сообщений: 17,681
Записей в блоге: 2
Завершенные тесты: 1
12.10.2013, 01:01     Инициализация vector #2
in C++98 'c' must be initialized by constructor, not by '{...}'
Переведите и 99% ошибки станет понятно.

Кликните здесь для просмотра всего текста
компилируйте с параметром -std=c++11
gray_fox
What a waste!
1253 / 1136 / 54
Регистрация: 21.04.2012
Сообщений: 2,359
Завершенные тесты: 3
12.10.2013, 01:02     Инициализация vector #3
Цитата Сообщение от theadamo86 Посмотреть сообщение
in C++98
-std=c++11 в опции компилятору
novi4ok
550 / 503 / 8
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
12.10.2013, 01:09     Инициализация vector #4
перепиши так
C++
1
2
int tmp[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
std::vector<int> c (tmp, tmp +  sizeof (tmp) / sizeof (int) );
theadamo86
7 / 7 / 0
Регистрация: 14.09.2013
Сообщений: 168
12.10.2013, 01:10  [ТС]     Инициализация vector #5
Цитата Сообщение от gray_fox Посмотреть сообщение
-std=c++11 в опции компилятору
Где это указать в Qt Creator?
gray_fox
What a waste!
1253 / 1136 / 54
Регистрация: 21.04.2012
Сообщений: 2,359
Завершенные тесты: 3
12.10.2013, 01:18     Инициализация vector #6
Цитата Сообщение от theadamo86 Посмотреть сообщение
Где это указать в Qt Creator?
Не знаю, не пользуюсь им; где-нибудь в настройках проекта...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.10.2013, 01:21     Инициализация vector
Еще ссылки по теме:

Работа со столбцами в vector< vector<int> > C++
C++ Запись в vector<vector<char>>
C++ Не работает функция sort (vector, vector)
Сортировка vector<vector<int>> C++
Нюансы синтаксиса: что означает запись vector<int*> a и vector <int>*a ? C++

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

Или воспользуйтесь поиском по форуму:
theadamo86
7 / 7 / 0
Регистрация: 14.09.2013
Сообщений: 168
12.10.2013, 01:21  [ТС]     Инициализация vector #7
Разобрался - необходимо было в файле .pro прописать:
C++ (Qt)
1
QMAKE_CXXFLAGS += -std=c++11
Yandex
Объявления
12.10.2013, 01:21     Инициализация vector
Ответ Создать тему
Опции темы

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