NAME
QPtrStack - Template class that provides a stack
SYNOPSIS
#include <
qptrstack.h>
Public Members
<li class=fn>
QPtrStack () <li class=fn>
QPtrStack ( const QPtrStack<type> & s ) <li class=fn>
~QPtrStack () <li class=fn>QPtrStack<type> &
operator= ( const QPtrStack<type> & s ) <li class=fn>bool
autoDelete () const <li class=fn>void
setAutoDelete ( bool enable ) <li class=fn>uint
count () const <li class=fn>bool
isEmpty () const <li class=fn>void
push ( const type * d ) <li class=fn>type *
pop () <li class=fn>bool
remove () <li class=fn>void
clear () <li class=fn>type *
top () const <li class=fn>
operator type * () const <li class=fn>type *
current () const
Protected Members
<li class=fn>virtual QDataStream &
read ( QDataStream & s, QPtrCollection::Item & item ) <li class=fn>virtual QDataStream &
write ( QDataStream & s, QPtrCollection::Item item ) const
DESCRIPTION
The 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 () const
The 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 () const
Returns the number of items in the stack.
See also isEmpty().
type * QPtrStack::current () const
Returns 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 () const
Returns TRUE if the stack contains no elements; otherwise returns FALSE.
QPtrStack::operator type * () const
Returns 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 () const
Returns 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
http://doc.trolltech.com/qptrstack.html
http://www.trolltech.com/faq/tech.html
COPYRIGHT
Copyright 1992-2001 Trolltech AS,
http://www.trolltech.com. See the
license file included in the distribution for a complete license
statement.
AUTHOR
Generated automatically from the source code.
BUGS
If you find a bug in Qt, please report it as described in
http://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-bugs@trolltech.com.
Please include the name of the manual page (qptrstack.3qt) and the Qt
version (3.3.3).
Index
- NAME
-
- SYNOPSIS
-
- Public Members
-
- Protected Members
-
- DESCRIPTION
-
- MEMBER FUNCTION DOCUMENTATION
-
- QPtrStack::QPtrStack ()
-
- QPtrStack::QPtrStack ( const QPtrStack<type> & s )
-
- QPtrStack::~QPtrStack ()
-
- bool QPtrStack::autoDelete () const
-
- void QPtrStack::clear ()
-
- uint QPtrStack::count () const
-
- type * QPtrStack::current () const
-
- bool QPtrStack::isEmpty () const
-
- QPtrStack::operator type * () const
-
- QPtrStack<type> & QPtrStack::operator= ( const QPtrStack<type> & s )
-
- type * QPtrStack::pop ()
-
- void QPtrStack::push ( const type * d )
-
- QDataStream & QPtrStack::read ( QDataStream & s, QPtrCollection::Item & item ) [virtual protected]
-
- bool QPtrStack::remove ()
-
- void QPtrStack::setAutoDelete ( bool enable )
-
- type * QPtrStack::top () const
-
- QDataStream & QPtrStack::write ( QDataStream & s, QPtrCollection::Item item ) const [virtual protected]
-
- SEE ALSO
-
- COPYRIGHT
-
- AUTHOR
-
- BUGS
-