ที่นี่เราจะเห็นคอนเทนเนอร์แผนที่และการใช้งานในภาษา C++ แผนที่ถูกกำหนดให้เป็นคอนเทนเนอร์ที่เชื่อมโยงที่เก็บองค์ประกอบในรูปแบบแฮชแมป แต่ละองค์ประกอบเชื่อมโยงกับคีย์และค่า ไม่มีค่าที่แมปสองค่าใดที่สามารถมีคีย์ที่เหมือนกันได้ นี่คือวิธีการพื้นฐานบางอย่างที่มีอยู่ในคอนเทนเนอร์แผนที่ใน C++
Begin():ส่งคืนตัววนซ้ำไปยังองค์ประกอบแรกในแผนที่
จบ() − สิ่งนี้จะส่งคืนตัววนซ้ำไปยังองค์ประกอบทางทฤษฎีที่ตามหลังองค์ประกอบสุดท้ายในแผนที่
ขนาด() - ส่งกลับจำนวนองค์ประกอบในแผนที่
max_size() - ส่งกลับจำนวนองค์ประกอบสูงสุดที่แผนที่สามารถถือได้
ว่างเปล่า() - ส่งกลับว่าแผนที่ว่างเปล่าหรือไม่
ตัวอย่าง
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
#include <bits/stdc++.h> using namespace std; int main() { int A[] = { 2, 2, 3, 2, 2, 4, 5, 4 }; int num = sizeof(A) / sizeof(A[0]); map<int, int> my_map; for (int p = 0; p < num; p++) my_map[A[p]]++; cout <<"Item Frequency"<< endl; for (auto p : my_map) cout << p.first <<" : "<< p.second << endl; }
ผลลัพธ์
Item Frequency 2 : 4 3 : 1 4 : 2 5 : 1
แผนที่ unordered_map เป็นคอนเทนเนอร์แผนที่อีกประเภทหนึ่งใน C ++ STL นี่คือคอนเทนเนอร์ที่เกี่ยวข้องซึ่งรวบรวมหรือจัดเก็บองค์ประกอบที่เกิดจากการรวมกันของคู่ค่าคีย์ คีย์นี้ใช้เพื่อระบุค่าโดยไม่ซ้ำกัน ในกรณีนี้ ทั้งคีย์และค่าอาจเป็นประเภทที่กำหนดไว้ล่วงหน้าหรือกำหนดโดยผู้ใช้ก็ได้
ตัวอย่าง
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
#include <bits/stdc++.h> using namespace std; int main() { int A[] = { 2, 2, 3, 2, 2, 4, 5, 4 }; int num = sizeof(A) / sizeof(A[0]); unordered_map<int, int> my_map; for (int p = 0; p < num; p++) my_map[A[p]]++; cout <<Item Frequency"<< endl; for (auto p : my_map) cout << p.first <<" : "<< p.second << endl; }
ผลลัพธ์
Item Frequency 5 : 1 4 : 2 2 : 4 3 : 1