Rogue Wave banner
Previous fileTop of DocumentContentsIndex pageNext file
Essential Tools Module Reference Guide
Rogue Wave web site:  Home Page  |  Main Documentation Page

RWTValSortedVector<T,C,A>

Module:  Essential Tools Module   Group:  STL-based Collection Classes


Does not inherit

Local Index

Members

Non-Members

Synopsis

#include <rw/tvsrtvec.h> 
RWTValSortedVector<T,C,A> srtvec;

Description

This class maintains an always-sorted collection of values, implemented as a vector.

The value type must have operator== and operator< defined. This requirement is imposed by the C++ Standard Library.

Persistence

Isomorphic

Example

In this example, a sorted vector of RWDateTimes is exercised.

Program Output:

Related Classes

RWTValSortedDlist<T,C,A> is an alternative always-sorted collection. RWTValOrderedVector<T,A> is an unsorted vector of values.

Class std::vector<T,A> is the C++-standard collection that serves as the underlying implementation for this class.

Public Typedefs

typedef vector<T,A> container_type; 
typedef typename container_type::const_iterator iterator;
typedef typename container_type::const_iterator
  const_iterator;
typedef typename container_type::size_type size_type;
typedef T value_type; 
typedef const T& reference; 
typedef const T& const_reference; 

Public Constructors

RWTValSortedVector<T,C,A>();
RWTValSortedVector<T,C,A>(const vector<T,A>& vec);
RWTValSortedVector<T,C,A>(const RWTValSortedVector<T,C,A>& rwvec);
RWTValSortedVector<T,C,A>(size_type n, const T& val);
RWTValSortedVector<T,C,A>(size_type n);
RWTValSortedVector<T,C,A>(const T* first, const T* last);

Public Member Operators

bool
operator<(const RWTValSortedVector<T,C,A>& vec) const; 
bool
operator<(const vector<T,A>& vec) const;
bool
operator==(const RWTValSortedVector<T,C,A>& vec) const; 
bool
operator==(const vector<T,A>& vec) 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;

Public Member Functions

void
apply(void (*fn)(const_reference,void*), void* d) const; 
reference
at(size_type i); 
const_reference
at(size_type i) const;
iterator
begin();
const_iterator
begin() const;
void
clear();
bool
contains(const_reference a) const; 
bool
contains(bool (*fn)(const_reference,void*), void* d) const;
const T*
data();
iterator
end();
const_iterator
end() const;
size_type
entries() const; 
bool
find(const_reference a, value_type& k) const; 
bool
find(bool (*fn)(const_reference,void*), void* d, 
     value_type& k) const;
reference
first();
const_reference
first() const;
size_type
index(const_reference a) const; 
size_type
index(bool (*fn)(const_reference,void*), void* d) const;
bool
insert(const_reference a); 
size_type
insert(const vector<T,A>& a);
bool
isEmpty() const; 
bool
isSorted() const; 
const_reference
last() const; 
size_type
length() const; 
size_type
merge(const RWTValSortedVector<T,C,A>& dl); 
size_type
occurrencesOf(const_reference a) const; 
size_type
occurrencesOf(bool (*fn)(const_reference,void*), 
              void* d) const;
bool
remove(const_reference a); 
bool
remove(bool (*fn)(const_reference,void*), void* d);
size_type
removeAll(const_reference a); 
size_type
removeAll(bool (*fn)(const_reference,void*), void* d);
value_type
removeAt(size_type i); 
value_type
removeFirst();
value_type
removeLast();
void
resize(size_type n); 
vector<T,A<T> >&
std();
const vector<T,A<T> >&
std() const;

Related Global Operators

RWvostream&
operator<<(RWvostream& strm, 
           const RWTValSortedVector<T,C,A>& coll);
RWFile&
operator<<(RWFile& strm, 
           const RWTValSortedVector<T,C,A>& coll);
RWvistream&
operator>>(RWvistream& strm, 
           RWTValSortedVector<T,C,A>& coll); 
RWFile&
operator>>(RWFile& strm, RWTValSortedVector<T,C,A>& coll);
RWvistream&
operator>>(RWvistream& strm, RWTValSortedVector<T,C,A>*& p);
RWFile&
operator>>(RWFile& strm, RWTValSortedVector<T,C,A>*& p);


Previous fileTop of DocumentContentsIndex pageNext file

© Copyright Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave and SourcePro are registered trademarks of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.
Contact Rogue Wave about documentation or support issues.