std::unordered_set<my_type> my_set;
Yêu cầu nào phải my_type thực hiện ở đây? (Bên cạnh một chuyên môn cho std :: hash)Yêu cầu đối với các phần tử trong tiêu chuẩn :: unordered_set
std::unordered_set<my_type> my_set;
Yêu cầu nào phải my_type thực hiện ở đây? (Bên cạnh một chuyên môn cho std :: hash)Yêu cầu đối với các phần tử trong tiêu chuẩn :: unordered_set
Bạn cần một chuyên môn cho std :: hash, và bạn cần một toán tử == được định nghĩa để xử lý các va chạm băm.
EDIT: Bạn cũng nên chắc chắn rằng loại của bạn có một nhà xây dựng bản sao (hoặc để cho trình biên dịch tạo ra một cho bạn) vì các container STL có ngữ nghĩa giá trị.
EDIT2: làm ví dụ về cách thực hiện việc này, bạn có thể xem this other SO answer.
Điều gì về các nhà thầu di chuyển/sao chép và các nhà khai thác chuyển nhượng? – cooky451
Có thể bạn cũng sẽ cần những thứ đó. Nhưng trực tiếp hơn, loại phải được hashable và bình đẳng so sánh. – bstamour
Vì vậy, di chuyển không thực hiện công việc? (Tôi hy vọng điều đó sẽ xảy ra, vì véc tơ v.v. đi tốt với nó ..) – cooky451
Bạn chỉ có thể tìm kiếm trong n3337 [unord.req] 23.2.5. Tìm n3337 trên trang [this] (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2012/). – bames53