ในบทความนี้ เราจะพูดถึงการทำงาน ไวยากรณ์และตัวอย่างของฟังก์ชัน map::begin() และ map::end() ใน C++ STL
แผนที่ใน C++ STL คืออะไร
แผนที่เป็นคอนเทนเนอร์ที่เชื่อมโยงกัน ซึ่งอำนวยความสะดวกในการจัดเก็บองค์ประกอบที่เกิดขึ้นจากการรวมกันของค่าคีย์และค่าที่แมปในลำดับเฉพาะ ในคอนเทนเนอร์แผนที่ ข้อมูลจะถูกจัดเรียงภายในเสมอโดยใช้คีย์ที่เกี่ยวข้อง ค่าในคอนเทนเนอร์แผนที่สามารถเข้าถึงได้โดยคีย์เฉพาะของมัน
แผนที่::begin() คืออะไร
ฟังก์ชัน map::begin() เป็นฟังก์ชัน inbuilt ใน C++ STL ซึ่งกำหนดไว้ในไฟล์ส่วนหัว
ฟังก์ชันนี้ส่งคืนตัววนซ้ำซึ่งชี้ไปที่องค์ประกอบแรกของคอนเทนเนอร์ เมื่อคอนเทนเนอร์ไม่มีค่าในนั้น ตัววนซ้ำจะไม่สามารถอ้างอิงได้
ไวยากรณ์
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 ซึ่งกำหนดไว้ในไฟล์ส่วนหัว
ฟังก์ชันนี้ส่งคืนตัววนซ้ำซึ่งชี้ไปยังองค์ประกอบที่อยู่ถัดจากองค์ประกอบสุดท้ายของคอนเทนเนอร์ เมื่อคอนเทนเนอร์ไม่มีค่าในนั้น ตัววนซ้ำจะไม่สามารถอ้างอิงได้
โดยปกติแล้ว 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