Chương trình không biên dịch một tập hợp các cặp số nguyên không theo thứ tự, nhưng nó cho các số nguyên. Có thể unordered_set và các hàm thành viên của nó được sử dụng trên các kiểu do người dùng định nghĩa và làm cách nào để xác định nó?Làm thế nào để đặt các cặp số nguyên không theo thứ tự trong C++?
#include <unordered_set>
...
class A{
...
private:
std::unordered_set< std::pair<int, int> > u_edge_;
};
error: no matching function for call to 'std::unordered_set<std::pair<unsigned int, unsigned int> >::unordered_set()'
functor của bạn nên exten std :: unary_function –
@AlexChamberlain Tôi nghĩ [thứ mà đã bị phản đối] (http://en.cppreference.com/w/cpp/utility/functional/unary_function). – juanchopanza
@AlexChamberlain: Tại sao nó nên làm điều đó? Lớp này đáp ứng tất cả các yêu cầu băm. –