一、什么是 queue?
queue 容器,又稱隊(duì)列容器,是簡單地裝飾deque容器而成為另外的一種容器。
二、容器特性
1.雙開口容器
實(shí)際上該容器模擬的就是隊(duì)列存儲(chǔ)結(jié)構(gòu),只能從尾部插入元素,只能從頭部刪除元素。(先進(jìn)先出,類似于排隊(duì))
2.不支持迭代器
只能通過固定的函數(shù)插入、訪問和刪除
三、基本函數(shù)實(shí)現(xiàn)
1,構(gòu)造函數(shù)
- queue();創(chuàng)建一個(gè)空queue
2.元素的增加、獲取與刪除
- void push(const T& x); 往隊(duì)列尾添加元素
- reference front(); 獲取隊(duì)頭元素
- reference back(); 獲取隊(duì)尾元素
- void pop(); 刪除隊(duì)頭元素
5.判斷函數(shù)
- bool empty() const;判斷容器中是否有元素,若無元素,則返回 true;反之,返回 false。
6.大小函數(shù)
- int size() const;返回隊(duì)列中元素的個(gè)數(shù)
7.其他函數(shù)
- void swap(queue&);交換兩個(gè)同類型隊(duì)列的數(shù)據(jù)
四、基本用法
#include
#include
using namespace std;
int main()
{
  queue<int> q;
  for (int i = 0; i < 10; i++)
  {
    q.push(i);
  }
  cout << q.front() << " " << q.back() << endl;
  while (!q.empty())
  {
    cout << q.front() << " ";
    q.pop();
  }
  cout << "\\nsize:" << q.size() << endl;
  return 0;
}
                        聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。
                        舉報(bào)投訴
                    
                    - 
                                容器
                                +關(guān)注關(guān)注 0文章 521瀏覽量 22758
- 
                                隊(duì)列
                                +關(guān)注關(guān)注 1文章 46瀏覽量 11187
- 
                                Queue
                                +關(guān)注關(guān)注 0文章 16瀏覽量 7486
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
                    熱點(diǎn)推薦
                  Linux kernel的wait queue機(jī)制
當(dāng)編寫Linux驅(qū)動(dòng)程序、模塊或內(nèi)核程序時(shí),一些進(jìn)程會(huì)等待或休眠一些事件。Linux中有幾種處理睡眠和醒來的方法,每種方法對(duì)應(yīng)不同的需求,而wait queue便是其中一種。
    
                發(fā)表于 06-15 10:54        
        ?1392次閱讀            
    
RAW queue 篇
1queue支持FIFO 和PRIO 的任務(wù)阻塞策略,如果是FIFO 的話阻塞隊(duì)列的順序是按照先來后到的次序去排列阻塞任務(wù),PRIO 策略的話是按照優(yōu)先級(jí)的排序。具體的設(shè)置可以直接設(shè)置這個(gè)結(jié)構(gòu)體中
    
                發(fā)表于 02-27 14:06        
                    
    
Queue Management、Queue Proxy Regions和Queue Peek Region幾個(gè)寄存器的主要區(qū)別是什么?
Queue Management、Queue Proxy Regions和Queue Peek Region幾個(gè)寄存器的主要區(qū)別是什么?
我看到手冊上介紹的
Queue N Regis
    
                發(fā)表于 06-19 04:28        
                    
    
6455 EDMA event queue問題
我在使用EDMA +Mcbsp0用于接收外部數(shù)據(jù)時(shí)候,遇到一個(gè)很奇怪的問題,如果我將Mcbsp0的接收通道映射到event queue 1沒有任何問題,但是映射到其他3個(gè)event queue就會(huì)
    
                發(fā)表于 06-24 00:56        
                    
    
消息隊(duì)列Queue相關(guān)資料推薦
消息隊(duì)列QueueAPItx_queue_createtx_queue_deletex_queue_flushtx_queue_front_sendtx_queue_receivetx_queue_send_notifyAPItx_queue_createtx_queue_deletetx_queue_flushtx_qu
    
                發(fā)表于 02-22 06:53        
                    
    
Linux之work_queue_share教程
Linux之work_queue_share教程,很好的Linux資料,快來學(xué)習(xí)吧
    
                發(fā)表于 04-15 17:49        
                ?13次下載    
    
Linux之work_queue_custom教程
Linux之work_queue_custom教程,很好的Linux自學(xué)資料,快來學(xué)習(xí)吧。
    
                發(fā)表于 04-15 17:49        
                ?8次下載    
    
Linux之work_queue_delay_work教程
Linux之work_queue_delay_work教程,很好的Linux自學(xué)資料,快來學(xué)習(xí)吧。
    
                發(fā)表于 04-15 17:54        
                ?12次下載    
    
Java多線程總結(jié)之Queue
在Java多線程應(yīng)用中,隊(duì)列的使用率很高,多數(shù)生產(chǎn)消費(fèi)模型的首選數(shù)據(jù)結(jié)構(gòu)就是隊(duì)列。Java提供的線程安全的Queue可以分為 阻塞隊(duì)列和非阻塞隊(duì)列 ,其中阻塞隊(duì)列的典型例子
    
                發(fā)表于 11-28 16:14        
        ?3598次閱讀            
    
                     
    
ThreadX(九)------消息隊(duì)列Queue
消息隊(duì)列QueueAPItx_queue_createtx_queue_deletex_queue_flushtx_queue_front_sendtx_queue_receivetx_queue_send_notifyAPItx_queue_createtx_queue_deletetx_queue_flushtx_qu
    
                發(fā)表于 12-28 19:35        
                ?2次下載    
    
                     
    
隊(duì)列Queue的常用方法有哪些
FIFO(先入先出)隊(duì)列Queue,LIFO(后入先出)隊(duì)列LifoQueue,和優(yōu)先級(jí)隊(duì)列PriorityQueue。
    
    
                     
    
STM32G0開發(fā)筆記:使用FreeRTOS系統(tǒng)的隊(duì)列Queue
使用Platformio平臺(tái)的libopencm3開發(fā)框架來開發(fā)STM32G0,下面為使用FreeRTOS系統(tǒng)的隊(duì)列Queue。
    
    
OpenHarmony語言基礎(chǔ)類庫【@ohos.util.Queue (線性容器Queue)】
Queue的特點(diǎn)是先進(jìn)先出,在尾部增加元素,在頭部刪除元素。根據(jù)循環(huán)隊(duì)列的數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)。
    
    
                     
    
 
           
        
 
         什么是queue?
什么是queue? 
                 
  
     
            
             
             
                 
             工商網(wǎng)監(jiān)
工商網(wǎng)監(jiān)
        
評(píng)論