ในบทความนี้เราจะพูดถึงการทำงาน ไวยากรณ์และตัวอย่างของ map::crbegin() และฟังก์ชัน map::crend() ใน C++ STL
แผนที่ใน C++ STL คืออะไร
แผนที่เป็นคอนเทนเนอร์ที่เชื่อมโยงกัน ซึ่งอำนวยความสะดวกในการจัดเก็บองค์ประกอบที่เกิดขึ้นจากการรวมกันของค่าคีย์และค่าที่แมปในลำดับเฉพาะ ในคอนเทนเนอร์แผนที่ ข้อมูลจะถูกจัดเรียงภายในเสมอโดยใช้คีย์ที่เกี่ยวข้อง ค่าในคอนเทนเนอร์แผนที่สามารถเข้าถึงได้โดยคีย์เฉพาะของมัน
map::cbegin() คืออะไร
ฟังก์ชัน map::crbegin() เป็นฟังก์ชัน inbuilt ใน C++ STL ซึ่งกำหนดไว้ในไฟล์ส่วนหัว
ไวยากรณ์
Map_name.crbegin();
พารามิเตอร์
ฟังก์ชันนี้ไม่ยอมรับพารามิเตอร์ใดๆ
คืนค่า
ฟังก์ชันนี้ส่งคืนตัววนซ้ำซึ่งชี้ไปที่องค์ประกอบสุดท้ายของคอนเทนเนอร์แผนที่
ตัวอย่าง
อินพุต
map<char, int> newmap; newmap[‘a’] = 1; newmap[‘b’] = 2; newmap[‘c’] = 3; newmap.crbegin();
ผลลัพธ์
c:3
แผนที่::crbegin
ตัวอย่าง
#include <bits/stdc++.h> using namespace std; int main() { map<int, int> TP_Map; TP_Map.insert({3, 50}); TP_Map.insert({2, 30}); TP_Map.insert({1, 10}); TP_Map.insert({4, 70}); //using map::crbegin to fetch first last element auto temp = TP_Map.crbegin(); cout<<"First element is: "<<temp->first << " -> " << temp->second; cout<<"\nTP Map is : \n"; cout << "MAP_KEY\tMAP_ELEMENT\n"; for (auto i = TP_Map.crbegin(); i!= TP_Map.crend(); i++) { cout << i->first << "\t" << i->second << endl; } return 0; }
ผลลัพธ์
First element is: 4 -> 70 TP Map is: MAP_KEY MAP_ELEMENT 4 70 3 50 2 30 1 10
map::crend() คืออะไร
ฟังก์ชัน map::crend() เป็นฟังก์ชัน inbuilt ใน C++ STL ซึ่งกำหนดไว้ในไฟล์ส่วนหัว
ไวยากรณ์
newmap.crend();
พารามิเตอร์
ฟังก์ชันนี้ไม่รับพารามิเตอร์ใดๆ
คืนค่า
ส่งคืนตัววนซ้ำที่ชี้ไปยังองค์ประกอบแรกก่อนหน้าของคอนเทนเนอร์แผนที่ที่เกี่ยวข้อง
ตัวอย่าง
อินพุต
map<char, int> newmap; newmap[‘a’] = 1; newmap[‘b’] = 2; newmap[‘c’] = 3; newmap.crend();
ผลลัพธ์
error
แผนที่::crend
ตัวอย่าง
#include <bits/stdc++.h> using namespace std; int main() { map<int, int> TP_Map; TP_Map.insert({3, 50}); TP_Map.insert({2, 30}); TP_Map.insert({1, 10}); TP_Map.insert({4, 70}); cout<<"\nTP Map is : \n"; cout << "MAP_KEY\tMAP_ELEMENT\n"; for (auto i = TP_Map.crbegin(); i!= TP_Map.crend(); i++) { cout << i->first << "\t" << i->second << endl; } return 0; }
ผลลัพธ์
TP Map is: MAP_KEY MAP_ELEMENT 4 70 3 50 2 30 1 10