NAMEQPtrStack - Template class that provides a stack
SYNOPSIS#include <qptrstack.h> Public Members QPtrStack () QPtrStack ( const QPtrStack<type> & s ) ~QPtrStack () QPtrStack<type> & operator= ( const QPtrStack<type> & s ) bool autoDelete () const void setAutoDelete ( bool enable ) uint count () const bool isEmpty () const void push ( const type * d ) type * pop () bool remove () void clear () type * top () const operator type * () const type * current () const Protected Members virtual QDataStream & read ( QDataStream & s, QPtrCollection::Item & item ) virtual QDataStream & write ( QDataStream & s, QPtrCollection::Item item ) const
DESCRIPTIONThe QPtrStack class is a template class that provides a stack. QValueStack is an STL-compatible alternative to this class. Define a template instance QPtrStack<X> to create a stack that operates on pointers to X, (X*). A stack is a last in, first out (LIFO) structure. Items are added to the top of the stack with push() and retrieved from the top with pop(). Use top() to get a reference to the top element without changing the stack. You can control the stack's deletion policy with setAutoDelete(). For compatibility with the QPtrCollection classes current() and remove() are provided; they both operate on the top(). See also QPtrList, QPtrQueue, and Non-GUI Classes.
MEMBER FUNCTION DOCUMENTATION
QPTRSTACK::QPTRSTACK ()Creates an empty stack.
QPTRSTACK::QPTRSTACK ( CONST QPTRSTACK<TYPE> & S )Creates a stack by making a shallow copy of another stack s.
QPTRSTACK::~QPTRSTACK ()Destroys the stack. All items will be deleted if autoDelete() is TRUE.
BOOL QPTRSTACK::AUTODELETE () CONSTThe same as QPtrCollection::autoDelete(). See also setAutoDelete().
VOID QPTRSTACK::CLEAR ()Removes all items from the stack, deleting them if autoDelete() is TRUE. See also remove().
UINT QPTRSTACK::COUNT () CONSTReturns the number of items in the stack. See also isEmpty().
TYPE * QPTRSTACK::CURRENT () CONSTReturns a pointer to the top item on the stack (most recently pushed). The stack is not changed. Returns 0 if the stack is empty.
BOOL QPTRSTACK::ISEMPTY () CONSTReturns TRUE if the stack contains no elements; otherwise returns FALSE.
QPTRSTACK::OPERATOR TYPE * () CONSTReturns a pointer to the top item on the stack (most recently pushed). The stack is not changed. Returns 0 if the stack is empty.
QPTRSTACK<TYPE> & QPTRSTACK::OPERATOR= ( CONST QPTRSTACK<TYPE> & S )Sets the contents of this stack by making a shallow copy of another stack s. Elements currently in this stack will be deleted if autoDelete() is TRUE.
TYPE * QPTRSTACK::POP ()Removes the top item from the stack and returns it. The stack must not be empty.
VOID QPTRSTACK::PUSH ( CONST TYPE * D )Adds an element d to the top of the stack. Last in, first out.
QDATASTREAM & QPTRSTACK::READ ( QDATASTREAM & S, QPTRCOLLECTION::ITEM & ITEM )[virtual protected] Reads a stack item, item, from the stream s and returns a reference to the stream. The default implementation sets item to 0. See also write().
BOOL QPTRSTACK::REMOVE ()Removes the top item from the stack and deletes it if autoDelete() is TRUE. Returns TRUE if there was an item to pop; otherwise returns FALSE. See also clear().
VOID QPTRSTACK::SETAUTODELETE ( BOOL ENABLE )Defines whether this stack auto-deletes its contents. The same as QPtrCollection::setAutoDelete(). If enable is TRUE the stack auto-deletes its contents; if enable is FALSE the stack does not delete its contents. See also autoDelete().
TYPE * QPTRSTACK::TOP () CONSTReturns a pointer to the top item on the stack (most recently pushed). The stack is not changed. Returns 0 if the stack is empty.
QDATASTREAM & QPTRSTACK::WRITE ( QDATASTREAM & S, QPTRCOLLECTION::ITEM ITEM )const [virtual protected] Writes a stack item, item, to the stream s and returns a reference to the stream. The default implementation does nothing. See also read().
SEE ALSO//doc.trolltech.com/qptrstack.html //www.trolltech.com/faq/tech.html
COPYRIGHTCopyright 1992-2007 Trolltech ASA, //www.trolltech.com. See the license file included in the distribution for a complete license statement.
AUTHORGenerated automatically from the source code.
BUGSIf you find a bug in Qt, please report it as described in //doc.trolltech.com/bughowto.html. Good bug reports help us to help you. Thank you. The definitive Qt documentation is provided in HTML format; it is located at $QTDIR/doc/html and can be read using Qt Assistant or with a web browser. This man page is provided as a convenience for those users who prefer man pages, although this format is not officially supported by Trolltech. If you find errors in this manual page, please report them to qt- email@example.com. Please include the name of the manual page (qptrstack.3qt) and the Qt version (3.3.8). QPTRSTACK(3)