English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
在计算机科学领域,我们致力于各种程序。他们每个人都有自己的领域和实用程序。根据程序创建的目的和环境,我们有大量数据结构可供选择。其中之一就是“队列”。在讨论这种数据类型之前,让我们看一下它的语法。
template<class T, class Container = deque<T> > class queue;
此数据结构适用于FIFO技术,其中FIFO表示先进先出。首先插入的元素将首先被提取,依此类推。有一个称为“前”的元素,它是位于最前位置或位于第一个位置的元素,也有一个名为“后”的元素,它是位于最后位置的元素。在普通队列中,元素的插入在尾部,而删除则从前面开始。
应用程序区域中的队列隐含为容器适配器。
容器应支持以下操作列表:
empty
size
push_back
pop_front
front
back
T:参数指定容器适配器将保留的元素的类型。
Container:参数指定容器内部对象,其中保留队列的元素。
以下列出了队列成员类型的列表,并对它们进行了简要描述。
成员类型 | Descrizione |
---|---|
value_type | Specifica il tipo degli elementi. |
container_type | Specifica il tipo di contenitore di base. |
size_type | Specifica l'intervallo di dimensione degli elementi. |
reference | È un tipo di riferimento al contenitore. |
const_reference | È un tipo di riferimento alla constante del contenitore. |
Grazie a queste funzioni, è possibile utilizzare oggetti o variabili nel campo della programmazione. La coda offre molte funzioni che possono essere utilizzate o incapsulate nel programma. Ecco la lista:
Funzione | Descrizione |
---|---|
(costruttore) | Questa funzione serve per costruire il contenitore della coda. |
empty | Questa funzione serve per testare se la coda è vuota. Se la coda è vuota, questa funzione restituisce true, altrimenti restituisce false. |
size | Questa funzione restituisce il numero di elementi nella coda. |
front | Questa funzione restituisce l'elemento primo. Questo elemento ha un ruolo molto importante perché tutte le operazioni di rimozione vengono eseguite sull'elemento in testa. |
back | Questa funzione restituisce l'elemento ultimo. Questo elemento ha un ruolo molto importante perché tutte le operazioni di inserimento vengono eseguite sull'elemento posteriore. |
push | Questa funzione serve per inserire un nuovo elemento alla fine. |
pop | Questa funzione serve per eliminare l'elemento primo. |
emplace | Questa funzione serve per inserire un nuovo elemento sopra l'elemento posteriore corrente nella coda. |
swap | Questa funzione serve per scambiare il contenuto di due contenitori di riferimento. |
operatori di relazione | Le funzioni non membri specificano gli operatori di relazione necessari per la coda. |
uses allocator<queue> | Come suggerisce il nome, le funzioni non membri utilizzano l'allocatore per la coda. |
#include <iostream> #include <queue> using namespace std; void showsg(queue<int> sg) { queue<int> ss = sg; while (!ss.empty()) { cout << '\t' << ss.front(); ss.pop(); } cout << '\n'; } int main() { queue<int> fquiz; fquiz.push(10); fquiz.push(20); fquiz.push(30); cout << "队列fquiz是 : "; showsg(fquiz); cout << "\nfquiz.size() : " << fquiz.size(); cout << "\nfquiz.front() : " << fquiz.front(); cout << "\nfquiz.back() : " << fquiz.back(); cout << "\nfquiz.pop() : "; fquiz.pop(); showsg(fquiz); return 0; }
Output:
La coda fquiz è : 10 20 30 fquiz.size() : 3 fquiz.front() : 10 fquiz.back() : 30 fquiz.pop() : 20 30