大家好,又见面了,我是全栈君,祝每个程序员都可以多学几门语言。
pair<iterator, bool> insert(const value_type& obj)
{
pair<typename ht::iterator, bool> p = rep.insert_unique(obj);
return pair<iterator, bool>(p.first, p.second);
}
private:
typedef hashtable<Value, Value, HashFcn, identity<Value>,
EqualKey, Alloc> ht;
ht rep; // 底层机制——hash table
public:
hash_set() : rep(100, hasher(), key_equal()) {} // 默认大小为100
但红黑树有自己主动排序功能而hash table没有,反映出来的结果就是,set的元素有自己主动排序功能而hash_set没有。以下是測试代码:
#include <iostream>
#include <hash_set>
using namespace std;
using namespace __gnu_cxx;
int main()
{
hash_set<int> set;
set.insert(3);
set.insert(196);
set.insert(1);
set.insert(389);
set.insert(194);
set.insert(387);
hash_set<int>::iterator iter = set.begin();
for ( ; iter != set.end(); ++iter)
cout << *iter << ' ';
return 0;
}

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/118071.html原文链接:https://javaforall.net
