QPtrStack类

Qt 3.0.5

主页 | 所有的类 | 主要的类 | 注释的类 | 分组的类 | 函数

QPtrStack类参考

QPtrQueue类是一个提供栈的模板类。 详情请见……

#include <qptrstack.h>

所有成员函数的列表。

公有成员

保护成员

  • 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()操作。

也可以参考QPtrListQPtrQueue非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添加到栈的顶端。后进先出。

QDataStream & QPtrStack::read ( QDataStream & s, QPtrCollection::Item & item ) [virtual protected]

从流s中读取一个栈项item并且返回流的引用。

默认实现是设置item为0。

也可以参考write()。

bool QPtrStack::remove ()

从栈中移除顶端项并且如果autoDelete()为真就删除它。如果有元素可以弹出,返回真,否则返回假。

也可以参考clear()。

void QPtrStack::setAutoDelete ( bool enable )

定义这个栈是否自动删除它的内容。和QPtrCollection::setAutoDelete()一样。

如果enable为真,栈会自动删除它的内容,如果enable为假,栈不会删除它的内容。

也可以参考autoDelete()。

type * QPtrStack::top () const

返回栈中顶端元素的引用(最近被放入的)。栈不被改变。

QDataStream & QPtrStack::write ( QDataStream & s, QPtrCollection::Item item ) const [virtual protected]

写一个栈项item到流s中并且返回流的引用。

默认实现是不做任何事。

也可以参考read().


这个文件是Qt工具包一部分。 版权所有 © 1995-2002 Trolltech。保留所有权利。


Copyright © 2002 Trolltech Trademarks 译者:Cavendish
Qt 3.0.5版