C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++プログラミングSTLのdeque::at()およびdeque ::swap()


この記事では、C++STLでのdeque::at()およびdeque ::swap()関数の動作、構文、および例について説明します。

Dequeとは何ですか?

Dequeは、両端で拡張と縮小の機能を提供するシーケンスコンテナである両端キューです。キューデータ構造により、ユーザーはENDでのみデータを挿入し、FRONTからデータを削除できます。バス停のキューを例にとると、ENDからのみキューに挿入でき、FRONTに立っている人が最初に削除されますが、両端キューではデータの挿入と削除が両方で可能です。終わり。

deque ::at()とは何ですか?

deque ::at()は、ヘッダーファイルで宣言されているC++STLの組み込み関数です。 deque ::at()は、deque内の指定された位置に存在する要素を指すために使用される参照を返します。この関数は、関数に引数として渡された位置にある要素に移動します。位置の値は0から始まります。

構文

mydeque.at(int position);

パラメータ

この関数は、ポイントしたい位置の1つのパラメーターを受け入れます。

戻り値

dequeコンテナの指定された位置にある要素への参照を返します。

Input: deque<int> mydeque = {10, 20, 30, 40};
mydeque.at(2);

出力

2つの位置の要素は30です。

#include <deque>
#include <iostream>
using namespace std;
int main(){
   deque<int> myDeque;
   myDeque.push_back(90);
   myDeque.push_back(80);
   myDeque.push_back(70);
   myDeque.push_back(60);
   myDeque.push_back(50);
   myDeque.push_back(40);
   myDeque.push_back(30);
   myDeque.push_back(20);
   myDeque.push_back(10);
   for (int i = 0; i < myDeque.size(); ++i){
      if (i % 2 == 0){
         cout << myDeque.at(i);
         cout << " ";
      }
   }
   return 0;
}

出力

上記のコードを実行すると、次の出力が生成されます-

90 70 50 30 10

deque ::swap()とは何ですか?

deque ::swap()は、C ++ STLに組み込まれている関数であり、ヘッダーファイルで宣言されています。 deque ::swap()は、一方のdequeコンテナの内容をもう一方のコンテナと交換するために使用されます。この関数は、関連するdequeコンテナとデータを交換する別のdequeコンテナのオブジェクトを取得します。

構文

mydeque1.swap(type_t& mydeque2);

パラメータ

この関数は、1つのパラメーター、つまり、関連する両端キューとデータを交換する両端キューへの参照を受け入れます。

戻り値

何も返しません。

Input: deque<int> even = {2, 4, 6, 8};
deque<int> odd = {1, 3, 5, 7};
even.swap(odd);
Output:
Even deque: 1 3 5 7
Odd deque: 2 4 6 8

#include <deque>
#include <iostream>
using namespace std;
int main(){
   deque<int> Deque_1 = { 1, 2, 3, 4 };
   deque<int> Deque_2 = { 3, 5, 7, 9 };
   Deque_1.swap(Deque_2);
   cout<<"Deque_1 elements after swapping : ";
   for (auto i = Deque_1.begin(); i< Deque_1.end(); ++i)
   cout << *i << " ";
   cout <<endl<<"Deque_2 elements after swapping : ";
   for (auto i = Deque_2.begin(); i<Deque_2.end(); ++i)
   cout << *i << " ";
   return 0;
}

出力

上記のコードを実行すると、次の出力が生成されます-

Deque_1 elements after swapping : 3 5 7 9
Deque_2 elements after swapping : 1 2 3 4

  1. STLのC++のdequepush_back()

    C ++STLでdequepush_back()関数の機能を表示するタスクが与えられています Dequeとは Dequeは、両端で拡張と縮小の機能を提供するシーケンスコンテナである両端キューです。キューデータ構造により、ユーザーはENDでのみデータを挿入し、FRONTからデータを削除できます。バス停のキューを例にとると、ENDからのみキューに挿入でき、FRONTに立っている人が最初に削除されますが、両端キューではデータの挿入と削除が両方で可能です。終わり。 deque push_back()関数とは push_back()関数は、新しい要素を両端キューに挿入するために使用されます 構文

  2. C++STLのArray::fill()とarray ::swap()?

    このセクションでは、C++STLでのarray::fill()とarray ::swap()の使用法を確認します。 array ::fill()関数は、指定された値で配列を埋めるために使用されます。アイデアを得るための1つの例を見てみましょう。 例 #include<iostream> #include<array> using namespace std; main() {    array<int, 10> arr = {00, 11, 22, 33, 44, 55, 66, 77, 88, 99};    co