バナーをクリックすれば目次に戻ります
Copyright 1999 Rogue Wave Software
Copyright 1999 Sun Microsystems, Inc.
RWTPtrHashTable<T>
#include <rw/tphset.h> unsigned hashFun(const T&); RWTPtrHashSet(hashFun) set;
注 - 標準 C++ ライブラリがない場合は、ここで説明しているインタフェースを使用してください。標準 C++ ライブラリがある場合は、クラスリファレンスの説明にあるインタフェースを使用してください。
クラス RWTPtrHashTable<T> の場合と同様、ハッシュ関数をコンストラクタに用意しなければなりません。
クラス T には次のものが必要です。
This examples exercises a set of RWCStrings.
#include <rw/tphset.h>
#include <rw/cstring.h>
#include <rw/rstream.h>
main() {
RWTPtrHashSet<RWCString> set(RWCString::hash);
set.insert(new RWCString("one"));
set.insert(new RWCString("two"));
set.insert(new RWCString("three"));
set.insert(new RWCString("one"));
cout << set.entries() << endl; // "3" を出力する
set.clearAndDestroy();
return 0;
}
|
3 |
RWTPtrHashSet<T>(unsigned (*hashFun)(const T&),
size_t buckets = RWDEFAULT_CAPACITY);
RWTPtrHashSet<T>& Union(const RWTPtrHashSet<T>& h);
RWTPtrHashSet<T>& difference(const RWTPtrHashSet<T>& h);
RWTPtrHashSet<T>& intersection(const RWTPtrHashSet<T>& h);
RWTPtrHashSet<T>& symmetricDifference(const RWTPtrHashSet<T>& h);
RWBoolean isSubsetOf(const RWTPtrHashSet<T>& h) const;
RWBoolean isProperSubsetOf(const RWTPtrHashSet<T>& h) const;
RWBoolean isEquivalent(const RWTPtrHashSet<T>& h) const;
RWBoolean operator!=(const RWTPtrHashSet<T>& h) const;
void apply(void (*applyFun)(T*, void*), void* d);
void clear();
void clearAndDestroy();
RWBoolean contains(const T* a) const;
size_t entries() const;
T* find(const T* target) const;
void insert(T* a);
RWBoolean isEmpty() const;
size_t occurrencesOf(const T* a) const;
T* remove(const T* a);
size_t removeAll(const T* a);
void resize(size_t N);
