C++ STL 中的 deque::operator= 和 deque::operator[]


本文將討論 C++ STL 中 deque::operator= 和 deque::operator[] 的工作原理、語法和示例。

什麼是 Deque?

Deque 是雙端佇列,是一種序列容器,可以在兩端進行擴充套件和收縮操作。佇列資料結構只允許在尾部插入資料,在頭部刪除資料。例如公交車站的排隊,只能在隊尾新增人,隊首的人先離開;而雙端佇列則可以在兩端進行插入和刪除操作。

什麼是 deque::operator =?

deque::operator = 用於為 deque 容器賦值新值,替換已有的值。此運算子還會根據新值修改 deque 容器的大小。

語法

mydeque1 = mydeque2;

它需要另一個相同型別的 deque 容器。

返回值

該運算子返回要為其賦值資料的 deque 容器的 *this 指標。

示例

Input: deque<int> odd = {1, 3, 5, 7};
   Deque<int> eve = {2, 4, 6};
   odd = eve;
Output:
   Odd: 2, 4, 6
   Eve: 2, 4, 6

示例

 線上演示

#include <deque>
#include <iostream>
using namespace std;
int main(){
   deque<int> Deque_1 = { 10, 20, 30 };
   deque<int> Deque_2 = { 30, 20, 10 };
   deque<int> Deque_3 = {};
   //it will swap the elements of both the deque
   Deque_3 = Deque_2;
   Deque_2 = Deque_1;
   Deque_1 = Deque_3;
   cout<<"Elements in Deque_1 are: ";
   for (auto i = Deque_1.begin(); i!= Deque_1.end(); ++i)
      cout << ' ' << *i;
   cout<<"\nElements in Deque_2 are: ";
   for (auto i = Deque_2.begin(); i!= Deque_2.end(); ++i)
      cout << ' ' << *i;
   return 0;
}

輸出

執行以上程式碼將生成以下輸出:

Elements in Deque_1 are: 30, 20, 10
Elements in Deque_2 are: 10 20 30

什麼是 deque::operator []?

deque::operator [] 用於訪問指定位置的元素。此運算子返回 [] 中給定位置處元素的引用。其工作方式類似於 deque::at()。當請求的元素位置超出容器範圍時,運算子會丟擲 out_of_range 異常。deque 容器的位置從 0 開始。

語法

mydeque[postion];

它需要要獲取的位置。

返回值

此運算子返回指定位置處元素的直接引用。

示例

Input: deque<int> mydeque = {1, 2, 3, 4, 5, 6};
   mydeque[2];
Output:
   3

示例

 線上演示

#include <deque>
#include <iostream>
using namespace std;
int main(){
   deque<int> Deque = {10, 20, 30, 40, 50};
   cout<<"Elements are : ";
   for (int i = 0; i < Deque.size(); ++i){
      if (i % 2 != 0){
         cout << Deque[i];
         cout << " ";
      }
   }
   return 0;
}

輸出

執行以上程式碼將生成以下輸出:

Elements are : 20 40

更新於:2020年3月5日

250 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.