Я хочу использовать специальный метод для инициализации std::vector
, который описан в книге по C++, которую я использую в качестве справочника (немецкая книга 'Der C++ Programmer' by Ulrich Breymann, если это имеет значение). В этой книге есть раздел о последовательных типах STL, в котором, в частности, упоминаются list
, vector
и deque
. В этом разделе он пишет, что есть два специальных конструктора таких типов последовательностей, а именно, если X
ссылается на такой тип,
X(n, t) // creates a sequence with n copies of t
X(i, j) // creates a sequence from the elements of the interval [i, j)
я хочу использовать второй для интервала unsigned int
, то есть
std::vector<unsigned int> l(1U, 10U);
получить список, инициализированный {1,2,...,9}
. Однако я получаю вектор с одним unsigned int
со значением 10 :-| Существует ли второй вариант, и если да, то как заставить его вызываться?