バナーをクリックすれば目次に戻ります
Copyright 1999 Rogue Wave Software
Copyright 1999 Sun Microsystems, Inc.
RWSortedVector
RWSortedVector RWOrdered
RWSequenceable
...
... RWCollection RWCollectable
#include <rw/sortvec.h> RWSortedVector a;
このクラスはポインタベクトルとして実装されるので、コレクション内の走査はクラス RWBinaryTree を使用する場合よりも効率的です。ただ、コレクションの途中への、挿入速度が遅くなります。
ベクトルはソートされるため、ベクトルに含まれる要素について、順序を無効にするような変更はしないでください。
// sortrec.cpp #include <rw/sortvec.h> #include <rw/collstr.h> #include <rw/rstream.h> main(){ RWSortedVector sv; sv.insert(new RWCollectableString("dog")); sv.insert(new RWCollectableString("cat")); sv.insert(new RWCollectableString("fish")); RWSortedVectorIterator next(sv); RWCollectableString* item; while( item = (RWCollectableString*)next() ) cout << *item << endl; sv.clearAndDestroy(); } |
cat dog fish |
RWSortedVector(size_t size = RWDEFAULT_CAPACITY);
RWBoolean operator==(const RWSortedVector& sv) const;
const RWCollectable* operator[](size_t i);
const RWCollectable* operator()(size_t i);
virtual void apply(RWapplyCollectable ap, void* x);
virtual const RWCollectable* at(size_t i) const;
virtual RWspace binaryStoreSize() const;
virtual void clear();
virtual void clearAndDestroy();
virtual int compareTo(const RWCollectable* a) const;
virtual RWBoolean contains(const RWCollectable* target) const;
virtual size_t entries() const;
virtual RWCollectable* find(const RWCollectable* target) const;
virtual RWCollectable* first() const;
virtual unsigned hash() const;
virtual size_t index(const RWCollectable*) const;
virtual RWCollectable* insert(RWCollectable* c);
virtual RWClassID isA() const;
virtual RWBoolean isEmpty() const;
virtual RWBoolean isEqual(const RWCollectable* a) const;
virtual RWCollectable* last() const;
virtual size_t occurrencesOf(const RWCollectable* target) const;
virtual RWCollectable* remove(const RWCollectable* target);
virtual void removeAndDestroy(const RWCollectable* target);
RWCollectable* removeAt(size_t index);