バナーをクリックすれば目次に戻ります
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);
