1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172
|
/****************************************************************************
** $Id: qt/qptrstack.doc 3.0.3 edited Oct 31 19:08 $
**
** QPtrStack class documentation
**
** Copyright (C) 1992-2000 Trolltech AS. All rights reserved.
**
** This file is part of the Qt GUI Toolkit.
**
** This file may be distributed under the terms of the Q Public License
** as defined by Trolltech AS of Norway and appearing in the file
** LICENSE.QPL included in the packaging of this file.
**
** This file may be distributed and/or modified under the terms of the
** GNU General Public License version 2 as published by the Free Software
** Foundation and appearing in the file LICENSE.GPL included in the
** packaging of this file.
**
** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition
** licenses may use this file in accordance with the Qt Commercial License
** Agreement provided with the Software.
**
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
**
** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
** information about Qt Commercial License Agreements.
** See http://www.trolltech.com/qpl/ for QPL licensing information.
** See http://www.trolltech.com/gpl/ for GPL licensing information.
**
** Contact info@trolltech.com if any conditions of this licensing are
** not clear to you.
**
**********************************************************************/
/*****************************************************************************
QPtrStack documentation
*****************************************************************************/
/*!
\class QPtrStack qptrstack.h
\brief The QPtrStack class is a template class that provides a stack.
\ingroup tools
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().
\sa QPtrList QPtrQueue
*/
/*! \fn QPtrStack::QPtrStack ()
Creates an empty stack.
*/
/*! \fn QPtrStack::QPtrStack (const QPtrStack<type>& s)
Creates a stack by making a shallow copy of another stack \a s.
*/
/*! \fn QPtrStack::~QPtrStack ()
Destroys the stack. All items will be deleted if autoDelete() is TRUE.
*/
/*! \fn QPtrStack<type>& QPtrStack::operator= (const QPtrStack<type>& s)
Sets the contents of this stack by making a shallow copy of another
stack \a s. Elements currently in this stack will be deleted if
autoDelete() is TRUE.
*/
/*! \fn bool QPtrStack::isEmpty () const
Returns TRUE is the stack contains no elements to be \link pop()
popped\endlink; otherwise returns FALSE.
*/
/*! \fn void QPtrStack::push (const type* d)
Adds an element \a d to the top of the stack. Last in, first out.
*/
/*! \fn type* QPtrStack::pop ()
Removes the top item from the stack and returns it.
*/
/*! \fn 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.
\sa clear()
*/
/*! \fn void QPtrStack::clear()
Removes all items from the stack, deleting them if
autoDelete() is TRUE.
\sa remove()
*/
/*! \fn uint QPtrStack::count() const
Returns the number of items in the stack.
\sa isEmpty()
*/
/*! \fn type* QPtrStack::top () const
Returns a reference to the top item on the stack (most recently pushed).
The stack is not changed.
*/
/*! \fn QPtrStack::operator type* ()const
Returns a reference to the top item on the stack (most recently pushed).
The stack is not changed.
*/
/*! \fn type* QPtrStack::current () const
Returns a reference to the top item on the stack (most recently pushed).
The stack is not changed.
*/
/*! \fn bool QPtrStack::autoDelete() const
The same as QPtrCollection::autoDelete().
\sa setAutoDelete()
*/
/*! \fn void QPtrStack::setAutoDelete( bool enable )
Defines whether this stack auto-deletes its contents.
The same as QPtrCollection::setAutoDelete().
If \a enable is TRUE the stack auto-deletes its contents; if \a
enable is FALSE the stack does not delete its contents.
\sa autoDelete()
*/
/*!
\fn QDataStream& QPtrStack::read( QDataStream& s,
QPtrCollection::Item& item )
Reads a stack item, \a item, from the stream \a s and returns a
reference to the stream.
The default implementation sets \a item to 0.
\sa write()
*/
/*!
\fn QDataStream& QPtrStack::write( QDataStream& s,
QPtrCollection::Item item ) const
Writes a stack item, \a item, to the stream \a s and returns a
reference to the stream.
The default implementation does nothing.
\sa read()
*/
|