Я хочу использовать специальный метод для инициализации std::vector<unsigned int>
, который описан в книге на C++, которую я использую в качестве ссылки (немецкая книга Der C++ Программист "Ульриха Браймана, в случае, если это имеет значение). В этой книге представлен раздел о типах последовательностей STL, относящийся, в частности, к list
, vector
и deque
. В этом разделе он пишет, что есть две специальные конструкторы таких типов последовательностей, а именно, если X
относится к такому типу,Инициализация std :: vector <unsigned int> со списком последовательных целых чисел без знака
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: - | Существует ли второй вариант, и если да, то как я могу заставить его его называть?
спасибо, работает по вашему желанию! Книга немного неспецифична в отношении этого конкретного конструктора, но позже буквы i, j фактически используются явно для итераторов. Th. – Thomas