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

map::begin() และ end() ใน C++ STL


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

แผนที่ใน C++ STL คืออะไร

แผนที่เป็นคอนเทนเนอร์ที่เชื่อมโยงกัน ซึ่งอำนวยความสะดวกในการจัดเก็บองค์ประกอบที่เกิดขึ้นจากการรวมกันของค่าคีย์และค่าที่แมปในลำดับเฉพาะ ในคอนเทนเนอร์แผนที่ ข้อมูลจะถูกจัดเรียงภายในเสมอโดยใช้คีย์ที่เกี่ยวข้อง ค่าในคอนเทนเนอร์แผนที่สามารถเข้าถึงได้โดยคีย์เฉพาะของมัน

แผนที่::begin() คืออะไร

ฟังก์ชัน map::begin() เป็นฟังก์ชัน inbuilt ใน C++ STL ซึ่งกำหนดไว้ในไฟล์ส่วนหัว Begin() ใช้เพื่อเข้าถึงองค์ประกอบซึ่งอยู่ที่จุดเริ่มต้นของคอนเทนเนอร์แผนที่ที่เกี่ยวข้อง

ฟังก์ชันนี้ส่งคืนตัววนซ้ำซึ่งชี้ไปที่องค์ประกอบแรกของคอนเทนเนอร์ เมื่อคอนเทนเนอร์ไม่มีค่าในนั้น ตัววนซ้ำจะไม่สามารถอ้างอิงได้

ไวยากรณ์

map_name.begin();

พารามิเตอร์

ฟังก์ชันไม่รับพารามิเตอร์

คืนค่า

ฟังก์ชันนี้ส่งคืนตัววนซ้ำซึ่งชี้ไปที่ค่าแรกของคอนเทนเนอร์แผนที่

ตัวอย่าง

อินพุต

std::map<int> mymap;
mymap.insert({‘a’, 10});
mymap.insert({‘b’, 20});
mymap.insert({‘c’, 30});
mymap.begin();

ผลลัพธ์

a:10

ตัวอย่าง

#include <bits/stdc++.h>
using namespace std;
int main() {
   map<int, int> TP_1;
   TP_1[1] = 10;
   TP_1[2] = 20;
   TP_1[3] = 30;
   TP_1[4] = 40;
   cout<<"Elements of TP_1 after swap:\n"<< "\tKEY\tELEMENT\n";
   for (auto i = TP_1.begin(); i!= TP_1.end(); i++) {
      cout << "\t" << i->first << "\t" << i->second << '\n';
   }
   return 0;
}

ผลลัพธ์

Elements of TP_1 after swap:
KEY    ELEMENT
1       10
2       20
3       30
4       40

แผนที่::end() คืออะไร

ฟังก์ชัน map::end() เป็นฟังก์ชัน inbuilt ใน C++ STL ซึ่งกำหนดไว้ในไฟล์ส่วนหัว end() ใช้เพื่อเข้าถึงองค์ประกอบที่อยู่หลังองค์ประกอบสุดท้ายในคอนเทนเนอร์หรือผ่านองค์ประกอบสุดท้าย

ฟังก์ชันนี้ส่งคืนตัววนซ้ำซึ่งชี้ไปยังองค์ประกอบที่อยู่ถัดจากองค์ประกอบสุดท้ายของคอนเทนเนอร์ เมื่อคอนเทนเนอร์ไม่มีค่าในนั้น ตัววนซ้ำจะไม่สามารถอ้างอิงได้

โดยปกติแล้ว start() และ end() จะใช้เพื่อวนซ้ำในคอนเทนเนอร์แผนที่โดยกำหนดระยะ

ไวยากรณ์

map_name.end();

พารามิเตอร์

ฟังก์ชันไม่รับพารามิเตอร์

คืนค่า

ฟังก์ชันนี้ส่งคืนตัววนซ้ำซึ่งชี้ไปที่ค่าสุดท้ายของคอนเทนเนอร์แผนที่ในอดีต

ตัวอย่าง

อินพุต

std::map<int> mymap;
mymap.insert({‘a’, 10});
mymap.insert({‘b’, 20});
mymap.insert({‘c’, 30});
mymap.end();

ผลลัพธ์

error

ตัวอย่าง

#include <bits/stdc++.h>
using namespace std;
int main() {
   map<int, int> TP_1;
   TP_1[1] = 10;
   TP_1[2] = 20;
   TP_1[3] = 30;
   TP_1[4] = 40;
   cout<<"Elements of TP_1 after swap:\n"<< "\tKEY\tELEMENT\n";
   for (auto i = TP_1.begin(); i!= TP_1.end(); i++) {
      cout << "\t" << i->first << "\t" << i->second << '\n';
   }
   return 0;
}

ผลลัพธ์

Elements of TP_1 after swap:
KEY    ELEMENT
1       10
2       20
3       30
4       40