ในบทความนี้เราจะพูดถึงการทำงาน ไวยากรณ์และตัวอย่างของฟังก์ชัน map::insert() ใน C++ STL
แผนที่ใน C++ STL คืออะไร
แผนที่เป็นคอนเทนเนอร์ที่เชื่อมโยงกัน ซึ่งอำนวยความสะดวกในการจัดเก็บองค์ประกอบที่เกิดขึ้นจากการรวมกันของค่าคีย์และค่าที่แมปในลำดับเฉพาะ ในคอนเทนเนอร์แผนที่ ข้อมูลจะถูกจัดเรียงภายในเสมอโดยใช้คีย์ที่เกี่ยวข้อง ค่าในคอนเทนเนอร์แผนที่สามารถเข้าถึงได้โดยคีย์เฉพาะของมัน
แผนที่::insert() คืออะไร
ฟังก์ชัน map::insert() เป็นฟังก์ชัน inbuilt ใน C++ STL ซึ่งกำหนดไว้ในไฟล์ส่วนหัว
เนื่องจากคีย์ในคอนเทนเนอร์แผนที่นั้นไม่ซ้ำกัน การดำเนินการแทรกจะตรวจสอบว่าองค์ประกอบที่จะแทรกแต่ละอันมีคีย์ที่มีอยู่แล้วในคอนเทนเนอร์หรือไม่ ถ้าใช่ องค์ประกอบนั้นจะไม่ถูกแทรก
นอกจากนี้ คอนเทนเนอร์แผนที่ยังรักษาองค์ประกอบทั้งหมดโดยใช้คีย์ตามลำดับจากน้อยไปมาก ดังนั้น เมื่อใดก็ตามที่เราแทรกองค์ประกอบ องค์ประกอบนั้นจะไปยังตำแหน่งที่เกี่ยวข้องตามคีย์ของมัน
ไวยากรณ์
<ก่อน>1. Map_name.insert({key&k, value_type&val});หรือ2. Map_name.insert(ตัววนซ้ำ&มัน {คีย์&k, value_type&val});หรือ3. Map_name.insert(ตัววนซ้ำ&position1, iterator&position2);พารามิเตอร์
ฟังก์ชันนี้ยอมรับพารามิเตอร์ต่อไปนี้
-
เค − นี่คือกุญแจที่เกี่ยวข้องกับองค์ประกอบ ฟังก์ชันจะตรวจสอบว่าคีย์อยู่ในคอนเทนเนอร์แล้วหรือไม่ จากนั้นจะไม่แทรกองค์ประกอบ
-
วาล − ค่าที่จะใส่เข้าไป
-
มัน − ประเภทตัววนซ้ำของค่าที่ใช้กำหนดตำแหน่งที่เราต้องการให้องค์ประกอบถูกแทรก
-
ตำแหน่งที่ 1 ตำแหน่งที่ 2 − ตำแหน่งที่ 1 คือตำแหน่งเริ่มต้น และตำแหน่งที่ 2 คือตำแหน่งสิ้นสุดเมื่อเราต้องการแทรกชุดขององค์ประกอบ เราสามารถใช้ช่วงขององค์ประกอบต่างๆ ที่เราต้องการแทรกได้
คืนค่า
ฟังก์ชันนี้ส่งคืนตัววนซ้ำไปยังองค์ประกอบที่เพิ่งแทรกในคอนเทนเนอร์แผนที่
ตัวอย่าง
อินพุต
mapnewmap;newmap['a'] =1;newmap['b'] =2;newmap['c'] =3;newmap.insert({d, 50});
ผลลัพธ์
a:1b:2c:3d:50
ตัวอย่าง
#includeใช้เนมสเปซ std;int main() { แผนที่ TP_Map; TP_Map.insert({3, 50}); TP_Map.insert({2, 30}); TP_Map.insert({1, 10}); TP_Map.insert({4, 70}); cout<<"แผนที่ TP คือ:\n"; ศาล <<"MAP_KEY\tMAP_ELEMENT\n"; สำหรับ (auto i =TP_Map.begin(); i!=TP_Map.end(); i++) { cout < first <<"\t" < second < ผลลัพธ์
แผนที่ TP คือ:MAP_KEY MAP_ELEMENT1 102 303 504 70ตัวอย่าง
#includeใช้เนมสเปซ std;int main() { แผนที่ TP_Map; TP_Map.insert({3, 50}); TP_Map.insert({2, 30}); TP_Map.insert({1, 10}); TP_Map.insert({4, 70}); อัตโนมัติ i =TP_Map.find(4); TP_Map.insert(i, { 5, 80 }); cout<<"แผนที่ TP คือ:\n"; ศาล <<"MAP_KEY\tMAP_ELEMENT\n"; สำหรับ (auto i =TP_Map.begin(); i!=TP_Map.end(); i++) { cout < first <<"\t" < second < ผลลัพธ์
แผนที่ TP คือ:MAP_KEY MAP_ELEMENT1 102 303 504 705 80