Обход списка инициализации в C++
Список инициализации поддерживает
обычный цикл for по диапазону, как контейнер
стандартной библиотеки.
На каждой итерации переменная цикла получает очередной элемент по значению или по ссылке. Запишем список и выведем каждое число с новой строки:
#include <initializer_list>
#include <iostream>
std::initializer_list<int> data{5, 6, 7};
for (int x : data) {
std::cout << x << "\n";
}
Порядок вывода совпадает с порядком литералов в фигурных скобках. Так удобно печатать или суммировать набор, переданный как список.
Создайте std::initializer_list<int>
vals из 2, 4, 6.
В цикле по диапазону сложите элементы
и выведите сумму.
Объявите std::initializer_list<std::string>
tags со строками "a" и "b".
Выведите каждую строку с новой строки.