mFrame
載入中...
搜尋中...
無符合項目
ufm::util::Queue< E > 結構 樣版 參考文件abstract

[Interface] 佇列介面 更多...

#include <Queue.h>

類別ufm::util::Queue< E >的繼承圖:
ufm::util::Collection< E > ufm::lang::Iterable< E > ufm::util::Container

公開方法(Public Methods)

virtual bool offer (E const &element) override
 如果在不違反容量限制的情況下立即執行,則將指定的元素插入到此隊列中。 當使用容量限制隊列時,此方法通常優於 add(E) ,這可能無法僅通過拋出異常來插入元素。
 
virtual E & poll (void) override
 檢索並刪除此隊列的頭,如果此隊列為空,則返回null。
 
virtual E & peek (void) override
 檢索但不刪除此隊列的頭部,如果此隊列為空,則返回 null 。
 
virtual bool isFull (void) const override
 檢查隊列是否已滿
 
- 公開方法(Public Methods) 繼承自 ufm::lang::Iterable< E >
virtual void forEach (ufm::func::Consumer< E & > &action) override
 遍歷集合中所有元素,對每個元素執行指定操作。 若所有元素處理完畢或操作中發生異常則停止。
 
virtual E * elementAt (int index) const override
 獲取集合中指定索引處的元素。
 
virtual int nextIndex (int index) const override
 返回當前索引的下一個有效索引。
 
virtual ufm::util::Iterator< E > begin (void) override
 返回一個迭代器,用於遍歷集合中的元素
 
virtual ufm::util::Iterator< E > end (void) override
 返回一個迭代器,用於遍歷集合的結尾
 
- 公開方法(Public Methods) 繼承自 ufm::util::Container
virtual void clear (void) override
 從此集合中刪除所有元素(可選操作)。此方法返回後,集合將為空。
 
virtual bool isEmpty (void) const override
 如果此集合不包含元素,則返回true。
 
virtual int size (void) const override
 返回此集合中的元素數。
 

靜態公開方法(Static Public Methods)

static Queue< E > * type (void)
 獲取 Queue 類型
 

詳細描述

template<typename E = void*>
struct ufm::util::Queue< E >

[Interface] 佇列介面

佇列是一種特殊類型的集合,按照先進先出 (FIFO) 的方式排序元素。 元素被添加到佇列的尾部,並從佇列的頭部被移除。 定義了佇列資料結構的基本操作,包括添加元素、移除元素和查看元素等功能。

樣版參數
E佇列中元素的類型
1.0.0

函式成員說明文件

◆ isFull()

template<typename E = void*>
virtual bool ufm::util::Queue< E >::isFull ( void ) const
pure virtual

檢查隊列是否已滿

傳回值
true 當隊列已無法再添加元素時
false 當隊列仍有空間可添加元素時

此方法用於檢查隊列是否已達到最大容量

實作於 ufm::util::ArrayQueue.

◆ offer()

template<typename E = void*>
virtual bool ufm::util::Queue< E >::offer ( E const & element)
pure virtual

如果在不違反容量限制的情況下立即執行,則將指定的元素插入到此隊列中。 當使用容量限制隊列時,此方法通常優於 add(E) ,這可能無法僅通過拋出異常來插入元素。

參數
e- 要添加的元素
傳回值
true如果元素被添加到這個隊列,否則 false

實作於 ufm::util::ArrayQueue.

◆ peek()

template<typename E = void*>
virtual E & ufm::util::Queue< E >::peek ( void )
pure virtual

檢索但不刪除此隊列的頭部,如果此隊列為空,則返回 null 。

傳回值
E* - 這個隊列的頭部或者null,如果這個隊列是空的

實作於 ufm::util::ArrayQueue.

◆ poll()

template<typename E = void*>
virtual E & ufm::util::Queue< E >::poll ( void )
pure virtual

檢索並刪除此隊列的頭,如果此隊列為空,則返回null。

傳回值
E* - 這個隊列的頭部或者null,如果這個隊列是空的

實作於 ufm::util::ArrayQueue.

◆ type()

template<typename E = void*>
static Queue< E > * ufm::util::Queue< E >::type ( void )
inlinestatic

獲取 Queue 類型

靜態方法,用於獲取 Queue<E> 類型的指針。 這是一個輔助方法,用於在模板編程中獲取正確的類型信息。

傳回值
Queue<E>* - Queue<E> 的類型指針

此結構(structure) 文件是由下列檔案中產生: