Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

deque::at() และ deque::swap() ใน C++ STL


ในบทความนี้ เราจะพูดถึงฟังก์ชัน deque::at() และ deque::swap() ในไวยากรณ์ของฟังก์ชัน C++ STL การทำงาน และค่าที่ส่งคืน

ฟังก์ชัน deque::at() และ deque::swap() ใน STL คืออะไร

คิว Deque หรือ Double สิ้นสุดตามชื่อ คอนเทนเนอร์ลำดับซึ่งสามารถขยายหรือหดได้ทั้งสองด้าน ผู้ใช้สามารถแทรกข้อมูลได้อย่างง่ายดายจากส่วนปลายใดๆ และลบข้อมูลออกจากส่วนปลายใดๆ ในทำนองเดียวกัน พวกมันคล้ายกับเวกเตอร์ แต่ความแตกต่างเพียงอย่างเดียวคือไม่รับประกันการจัดสรรพื้นที่เก็บข้อมูลที่ต่อเนื่องกัน ซึ่งแตกต่างจากเวกเตอร์ Still Deque จะมีประสิทธิภาพมากกว่าในกรณีที่มีการแทรกและลบองค์ประกอบที่ปลายทั้งสองข้าง

deque::at()

ฟังก์ชัน at() ใช้เพื่ออ้างอิงถึงองค์ประกอบที่อยู่ในตำแหน่งเฉพาะที่กำหนดให้เป็นพารามิเตอร์ของฟังก์ชัน

ไวยากรณ์

dequename.at(position of element)

พารามิเตอร์

ตำแหน่งขององค์ประกอบ

ผลตอบแทนที่ได้รับ

อ้างอิงโดยตรงกับองค์ประกอบในตำแหน่งที่กำหนด

ตัวอย่าง

Input : adeque = 1, 3, 4, 5, 8
adeque.at(3);
Output : 5
Input : adeque = 1, 3, 5, 7,9
adeque.at(2);
Output : 5

ตัวอย่าง

#include <deque>
#include <iostream>
using namespace std;
int main(){
   deque<int> adeque;
   adeque.push_back(1);
   adeque.push_back(3);
   adeque.push_back(4);
   adeque.push_back(5);
   adeque.push_back(8);
   cout << adeque.at(3);
   return 0;
}

ผลลัพธ์

หากเราเรียกใช้โค้ดข้างต้น มันจะสร้างผลลัพธ์ต่อไปนี้ -

5

deque::swap()

ฟังก์ชัน swap() ใช้เพื่อแลกเปลี่ยนหรือสลับองค์ประกอบของสอง deque ที่มีประเภทเดียวกันและขนาดเท่ากัน

ไวยากรณ์

Deque1name.swap(deque2name)

พารามิเตอร์

พารามิเตอร์ประกอบด้วยชื่อของ deque ซึ่งเนื้อหาของ deque1 จะต้องมีการกำหนดรูปแบบ

ผลตอบแทนที่ได้รับ

องค์ประกอบทั้งหมดของดีคทั้งสองจะถูกสับเปลี่ยนหรือสับเปลี่ยน

ตัวอย่าง

Input : adeque = {1, 3, 4, 5, 8}
bdeque = {2, 6, 7, 9, 0}
adeque.swap(bdeque);
Output : adeque = {2, 6, 7, 9, 0}
bdeque = {1, 3, 4, 5, 8}

ตัวอย่าง

#include <deque>
#include <iostream>
using namespace std;
int main(){
   // deque container declaration
   deque<int> adeque{ 1, 2, 3, 4 };
   deque<int> bdeque{ 3, 5, 7, 9 };
   // using swap() function to swap elements of deques
   adeque.swap(bdeque);
   // code for printing the elemets of adeque
   cout << "adeque = ";
   for (auto it = adeque.begin(); it < adeque.end(); ++it)
      cout << *it << " ";
   // code for printing the elemets of bdeque
   cout << endl
   << "bdeque = ";
   for (auto it = bdeque.begin(); it < bdeque.end(); ++it)
      cout << *it << " ";
   return 0;
}

ผลลัพธ์

หากเรารันโค้ดด้านบน มันจะสร้างผลลัพธ์ต่อไปนี้

adeque = {2, 6, 7, 9, 0}
bdeque = {1, 3, 4, 5, 8}