Tôi muốn sử dụng một phương pháp đặc biệt để khởi tạo số std::vector<unsigned int>
được mô tả trong sách C++ tôi sử dụng làm tài liệu tham khảo (sách tiếng Đức 'Der C++ Lập trình viên 'của Ulrich Breymann, trong trường hợp có vấn đề). Trong cuốn sách đó là một phần về các loại trình tự của STL, đề cập cụ thể đến list
, vector
và deque
. Trong phần này, ông viết rằng có hai cấu trúc đặc biệt của các loại chuỗi như vậy, cụ thể là, nếu X
dùng để chỉ một loại như vậy,Khởi tạo std :: vector <unsigned int> với danh sách các số nguyên không dấu liên tiếp
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)
Tôi muốn sử dụng một trong những thứ hai cho một khoảng thời gian unsigned int
, đó là
std::vector<unsigned int> l(1U, 10U);
để có danh sách được khởi tạo với {1,2,...,9}
. Những gì tôi nhận được, tuy nhiên, là một vector với một unsigned int
với giá trị 10: - | Liệu biến thể thứ hai tồn tại, và nếu có, làm thế nào để ép buộc nó được gọi là?
cảm ơn, hoạt động như mong muốn! Cuốn sách là một chút không xác định đối với nhà xây dựng cụ thể đó, nhưng sau đó trên các chữ cái i, j là trong thực tế được sử dụng một cách rõ ràng cho các trình vòng lặp. Th. – Thomas