QPtrStack类参考
QPtrQueue类是一个提供栈的模板类。
详情请见……
#include <qptrstack.h>
所有成员函数的列表。
公有成员
QPtrStack<type> &
operator= ( const QPtrStack<type> & s )
void
push ( const type * d )
保护成员
virtual QDataStream &
read ( QDataStream & s, QPtrCollection::Item & item )
virtual QDataStream &
write ( QDataStream & s, QPtrCollection::Item item ) const
详细描述
QPtrQueue类是一个提供栈的模板类。
QValueStack是可以替代这个类的的一个可兼容STL的的选择。
定义一个模板实例QPtrStack<X>就创建了一个操作X(X*)指针的队列。
栈就是后进先出的结构。可以通过push()把项添加到栈的顶端并且可以通过pop()可以重新获得顶端的项。使用top()可以得到栈的顶端元素的应用而不改变它。
你可以用setAutoDelete()来控制栈删除策略。
为了兼容QPtrCollection类,current()和remove()都被提供,两个都基于top()操作。
也可以参考QPtrList、QPtrQueue和非GUI类。
成员函数文档
QPtrStack::QPtrStack ()
创建一个空栈。
QPtrStack::QPtrStack ( const QPtrStack<type> & s )
通过浅复制另一个栈s来构造一个栈。
QPtrStack::~QPtrStack ()
销毁这个栈。如果autoDelete()为真,栈中的项被删除。
bool QPtrStack::autoDelete () const
和QPtrCollection::autoDelete()相同。
也可以参考setAutoDelete()。
void QPtrStack::clear ()
从栈中移除所有项,并且如果autoDelete()为真,就删除它们。
也可以参考remove()。
uint QPtrStack::count () const
返回栈中项的数量。
也可以参考isEmpty()。
type * QPtrStack::current () const
返回栈中顶端元素的引用(最近被放入的)。栈不被改变。
bool QPtrStack::isEmpty () const
如果栈没有任何元素可以被弹出,返回真,否则返回假。
QPtrStack::operator type * () const
返回栈中顶端元素的引用(最近被放入的)。栈不被改变。
QPtrStack<type> & QPtrStack::operator= ( const QPtrStack<type> & s )
通过给另一个栈s做浅复制来设置这个栈的内容。如果autoDelete()设置为真,这个栈当前的元素将被删除。
type * QPtrStack::pop ()
从栈中删除顶端项并且返回它。
void QPtrStack::push ( const type * d )
把元素d添加到栈的顶端。后进先出。
从流s中读取一个栈项item并且返回流的引用。
默认实现是设置item为0。
也可以参考write()。
bool QPtrStack::remove ()
从栈中移除顶端项并且如果autoDelete()为真就删除它。如果有元素可以弹出,返回真,否则返回假。
也可以参考clear()。
void QPtrStack::setAutoDelete ( bool enable )
定义这个栈是否自动删除它的内容。和QPtrCollection::setAutoDelete()一样。
如果enable为真,栈会自动删除它的内容,如果enable为假,栈不会删除它的内容。
也可以参考autoDelete()。
type * QPtrStack::top () const
返回栈中顶端元素的引用(最近被放入的)。栈不被改变。
写一个栈项item到流s中并且返回流的引用。
默认实现是不做任何事。
也可以参考read().
这个文件是Qt工具包一部分。
版权所有 © 1995-2002
Trolltech。保留所有权利。