バナーをクリックすれば目次に戻ります
Copyright 1999 Rogue Wave Software
Copyright 1999 Sun Microsystems, Inc.
RWTPtrSlist<T>
#include <rw/tpslist.h> RWTPtrSlist<T> slist;
注 - 標準 C++ ライブラリがある場合は、ここで述べるインタフェースを使用します。標準 C++ ライブラリがない場合は、付録 A に記載する RWTPtrSlist に限定されたインタフェースを使用してください。
// // tpsldat.cpp // #include <rw/tpslist.h> #include <rw/rwdate.h> #include <iostream.h> main(){ RWTPtrSlist<RWDate> dates; dates.insert(new RWDate(2, "June", 52)); // 6/2/52 dates.insert(new RWDate(30, "March", 46)); // 3/30/46 dates.insert(new RWDate(1, "April", 90)); // 4/1/90 // ここで、日付の 1 つを探す RWDate * ret = dates.find(new RWDate(2,"June",52)); if (ret){ cout << "Found date " << ret << endl; } // 逆の順序で削除する while (!dates.isEmpty()) cout << *dates.removeLast() << endl; return 0; } |
Found date 4/01/90 3/30/46 6/02/52 |
クラス rw_slist<T*> は、このクラスの基礎となる実装として使用される C++ 標準コレクションです。
typedef rw_slist<T*> container_type; typedef container_type::size_type size_type; typedef container_type::difference_type difference_type; typedef container_type::iterator iterator; typedef container_type::const_iterator const_iterator; typedef T* value_type; typedef T*& reference; typedef T*const& const_reference;
RWTPtrSlist<T>();
RWTPtrSlist<T>(const RWTPtrSlist<T>& rwlst);
RWTPtrSlist<T>(const rw_slist<T*>& lst);
RWTPtrSlist<T>(size_type n, const T* a=0);
RWTPtrSlist<T>(T* const* first, T* const* last);
RWTPtrSlist<T>& operator=(const RWTPtrSlist<T>& lst); RWTPtrSlist<T>& operator=(const rw_slist<T*>& lst);
bool operator<(const RWTPtrSlist<T>& lst) const;
bool operator==(const RWTPtrSlist<T>& lst) const;
reference operator()(size_type i); const_reference operator()(size_type i) const;
reference operator[](size_type i); const_reference operator[](size_type i) const;
void append(T* a);
void apply(void (*fn)(T*,void*), void* d); void apply(void (*fn)(T*&,void*), void* d); void apply(void (*fn)(const T*,void*), void* d) const;
void yourfun(T* a, void* d); void yourfun(reference a, void* d); void yourfun(const T* a, void* d);
reference at(size_type i); const_reference at(size_type i) const;
iterator begin(); const_iterator begin() const;
void clear();
void clearAndDestroy();
bool contains(const T* a) const;
bool contains(bool (*fn)(T*,void*), void* d) const; bool contains(bool (*fn)(const T*,void*), void* d) const;
bool yourTester(T* a, void* d); bool yourTester(const T* a, void* d);
iterator end(); const_iterator end() const;
size_type entries() const;
T* find(const T* a) const;
T* find(bool (*fn)(T*,void*),void* d) const; T* find(bool (*fn)(const T*,void*),void* d) const;
bool yourTester(const T* a, void* d); bool yourTester(const T* a, void* d);
reference first(); const_reference first() const;
T* get();
size_type index(const T* a) const;
size_type index(bool (*fn)(T*,void*), void* d) const; size_type index(bool (*fn)(const T*,void*), void* d) const;
bool yourTester(T* a, void* d); bool yourTester(const T* a, void* d);
bool insert(T* a);
void insertAt(size_type i, T* a);
bool isEmpty() const;
T*& last(); T*const& last() const;
reference maxElement(); const_reference maxElement() const; reference minElement(); const_reference minElement() const;
size_type occurrencesOf(const T* a) const;
size_type occurrencesOf(bool (*fn)(T*,void*), void* d) const; size_type occurrencesOf(bool (*fn)(const T*,void*), void* d) const;
bool yourTester(T* a, void* d); bool yourTester(const T* a, void* d);
void prepend(T* a);
T* remove(const T* a);
T* remove(bool (*fn)(T*,void*), void* d); T* remove(bool (*fn)(const T*,void*), void* d);
bool yourTester(T* a, void* d); bool yourTester(const T* a, void* d);
size_type removeAll(const T* a);
size_type removeAll(bool (*fn)(T*,void*), void* d); size_type removeAll(bool (*fn)(const T*,void*), void* d);
bool yourTester(T* a, void* d); bool yourTester(const T* a, void* d);
T* removeAt(size_type i);
T* removeFirst();
T* removeLast();
size_type replaceAll(const T* oldVal,T* newVal);
size_type replaceAll(bool (*fn)(T*, void*),void* x,T* newVal); size_type replaceAll(bool (*fn)(const T*, void*),void* x,T* newVal);
bool yourTester(T* a, void* d); bool yourTester(const T* a, void* d);
void sort();
rw_slist<T*>& std(); const rw_slist<T*>& std() const;
const size_type npos;
RWvostream& operator<<(RWvostream& strm, const RWTPtrSlist<T>& coll); RWFile& operator<<(RWFile& strm, const RWTPtrSlist<T>& coll);
RWvistream& operator>>(RWvistream& strm, RWTPtrSlist<T>& coll); RWFile& operator>>(RWFile& strm, RWTPtrSlist<T>& coll);
RWvistream& operator>>(RWvistream& strm, RWTPtrSlist<T>*& p); RWFile& operator>>(RWFile& strm, RWTPtrSlist<T>*& p);