Tools.h++ Class Reference
Table Of Contents
- Tools.h++ 7.0 Class Reference
- Intoduction
- Class Hierarchy
- RWAuditStreamBuffer
- RWBag
- RWBagIterator
- RWBench
- RWBinaryTree
- RWBinaryTreeIterator
- RWbistream
- RWBitVec
- RWbostream
- RWBTree
- RWBTreeDictionary
- RWBTreeOnDisk
- RWBufferedPageHeap
- RWCacheManager
- RWCLIPstreambuf
- RWCollectable
- RWCollectableAssociation
- RWCollectableDate
- RWCollectableInt
- RWCollectableString
- RWCollectableTime
- RWCollection
- RWCRegexp
- RWCRExpr
- RWCString
- RWCSubString
- RWCTokenizer
- RWDate
- RWDDEstreambuf
- RWDiskPageHeap
- RWDlistCollectables
- RWDlistCollectablesIterator
- RWeistream
- RWeostream
- RWFactory
- RWFile
- RWFileManager
- RWGBitVec(size)
- RWGDlist(type)
- RWGDlistIterator(type)
- RWGOrderedVector(val)
- RWGQueue(type)
- RWGSlist(type)
- RWGSlistIterator(type)
- RWGSortedVector(val)
- RWGStack(type)
- RWGVector(val)
- RWHashDictionary
- RWHashDictionaryIterator
- rw_hashmap
- rw_hashmultimap
- rw_hashmultiset
- rw_hashset
- RWHashTable
- RWHashTableIterator
- RWIdentityDictionary
- RWIdentitySet
- RWInteger
- RWIterator
- RWLocale
- RWLocaleSnapshot
- RWModel
- RWModelClient
- RWOrdered
- RWOrderedIterator
- RWpistream
- RWpostream
- RWSequenceable
- RWSet
- RWSetIterator
- rw_slist
- RWSlistCollectables
- RWSlistCollectablesIterator
- RWSlistCollectablesQueue
- RWSlistCollectablesStack
- RWSortedVector
- RWTBitVec
- RWTime
- RWTimer
- RWTIsvDlist
- RWTIsvDlistIterator
- RWTIsvSlist
- RWTIsvSlistIterator
- RWTPtrDeque
- RWTPtrDlist
- RWTPtrDlistIterator
- RWTPtrHashDictionary
- RWTPtrHashDictionaryIterator
- RWTPtrHashMap
- RWTPtrHashMapIterator
- RWTPtrHashMultiMap
- RWTPtrHashMultiMapIterator
- RWTPtrHashSet
- RWTPtrHashMultiSetIterator
- RWTPtrHashSetIterator
- RWTPtrHashTable
- RWTPtrHashTableIterator
- RWTPtrMap
- RWTPtrMapIterator
- RWTPtrMultiMap
- RWTPtrMultiMapIterator
- RWTPtrMultiSet
- RWTPtrMultiSetIterator
- RWTPtrOrderedVector
- RWTPtrSet
- RWTPtrSetIterator
- RWTPtrSlist
- RWTPtrSlistIterator
- RWTPtrSortedDlist
- RWTPtrSortedDlistIterator
- RWTPtrSortedVector
- RWTPtrVector
- RWTQueue
- RWTStack
- RWTValDeque
- RWTValDlist
- RWTValDlistIterator
- RWTValHashDictionary
- RWTValHashDictionaryIterator
- RWTValHashMap
- RWTValHashMapIterator
- RWTValHashMultiMap
- RWTValHashMultiMapIterator
- RWTValHashMultiSet
- RWTValHashMultiSetIterator
- RWTValHashSet
- RWTValHashSetIterator
- RWTValHashTable
- RWTValHashTableIterator
- RWTValMap
- RWTValMapIterator
- RWTValMultiMap
- RWTValMultiMapIterator
- RWTValMultiSet
- RWTValMultiSetIterator
- RWTValOrderedVector
- RWTValSet
- RWTValSetIterator
- RWTValSlist
- RWTValSlistIterator
- RWTValSortedDlist
- RWTValSortedDlistIterator
- RWTValSortedVector
- RWTValVector
- RWTValVirtualArray
- RWVirtualPageHeap
- RWvios
- RWvistream
- RWvostream
- RWWString
- RWWSubString
- RWWTokenizer
- RWXDRistream (Unix only)
- RWXDRostream (Unix only)
- RWZone
- RWZoneSimple
- Tools.h++ 7.0 Class Reference Appendix
- RWTPtrDlist
- RWTPtrDlistIterator
- RWTPtrHashDictionary
- RWTPtrHashDictionaryIterator
- RWTPtrHashSet
- RWTPtrHashTable
- RWTPtrHashTableIterator
- RWTPtrOrderedVector
- RWTPtrSlist
- RWTPtrSlistIterator
- RWTPtrSortedVector
- RWTValDlist
- RWTValDlistIterator
- RWTValHashDictionary
- RWTValHashDictionaryIterator
- RWTValHashSet
- RWTValHashTable
- RWTValHashTableIterator
- RWTValOrderedVector
- RWTValSlist
- RWTValSlistIterator
- RWTValSortedVector
- RWTPtrDlist
- Rogue Wave Licensing Statement

Click on the banner to return to the Class Reference home page.
©Copyright 1996 Rogue Wave Software
RWTValVirtualArray<T>
Synopsis●
Description●
Persistence●
Example●
Public Constructors●
Public Destructor●
Public Operators●
Public Member Functions●
Synopsis
#include <rw/tvrtarry.h>
RWVirtualPageHeap* heap;
RWTValVirtualArray<T> array(1000L, heap);
Description
This class represents a virtual array of elements of type T of almost any length. Individual
elements are brought into physical memory as needed basis. If an element is updated it is
automatically marked as "dirty" and will be rewritten to the swapping medium.
The swap space is provided by an abstract page heap which is specified by the constructor. Any
number of virtual arrays can use the same abstract page heap. You must take care that the
destructor of the abstract page heap is not called before all virtual arrays built from it have
been destroyed.
The class supports reference counting using a copy-on-write technique, so (for example)
returning a virtual array by value from a function is as efficient as it can be. Be aware, however,
that if the copy-on-write machinery finds that a copy must ultimately be made, then for large
arrays this could take quite a bit of time.
For efficiency, more than one element can (and should) be put on a page. The actual number of