ในบทความนี้ เราจะพูดถึงวิธีการเข้าถึงและอัปเดตองค์ประกอบสุดท้ายของเวกเตอร์ใน C++
เทมเพลตเวกเตอร์คืออะไร
เวกเตอร์คือคอนเทนเนอร์ลำดับที่มีขนาดเปลี่ยนแปลงแบบไดนามิก คอนเทนเนอร์คืออ็อบเจ็กต์ที่เก็บข้อมูลประเภทเดียวกัน คอนเทนเนอร์ลำดับเก็บองค์ประกอบอย่างเคร่งครัดในลำดับเชิงเส้น
คอนเทนเนอร์เวกเตอร์จัดเก็บองค์ประกอบในตำแหน่งหน่วยความจำที่อยู่ติดกัน และเปิดใช้งานการเข้าถึงโดยตรงไปยังองค์ประกอบใดๆ โดยใช้ตัวดำเนินการตัวห้อย [] ขนาดของเวกเตอร์เป็นไดนามิกต่างจากอาร์เรย์ การจัดเก็บเวกเตอร์จะได้รับการจัดการโดยอัตโนมัติ
นิยามของเวกเตอร์
Template <class T, class Alloc = allocator<T>> class vector;
พารามิเตอร์ของเวกเตอร์
ฟังก์ชันยอมรับพารามิเตอร์ต่อไปนี้ −
-
ท − นี่คือประเภทขององค์ประกอบที่มีอยู่
-
จัดสรร − นี่คือประเภทของอ็อบเจ็กต์ตัวจัดสรร
เราจะเข้าถึงองค์ประกอบสุดท้ายของเวกเตอร์ได้อย่างไร
ในการเข้าถึงองค์ประกอบสุดท้ายของเวกเตอร์ เราสามารถทำได้สองวิธี:
ตัวอย่าง
ใช้ฟังก์ชัน back()
#include <bits/stdc++.h>
using namespace std;
int main(){
vector<int> vec = {11, 22, 33, 44, 55};
cout<<"Elements in the vector before updating: ";
for(auto i = vec.begin(); i!= vec.end(); ++i){
cout << *i << " ";
}
// call back() for fetching last element
cout<<"\nLast element in vector is: "<<vec.back();
vec.back() = 66;
cout<<"\nElements in the vector before updating: ";
for(auto i = vec.begin(); i!= vec.end(); ++i){
cout << *i << " ";
}
return 0;
} ผลลัพธ์
หากเราเรียกใช้โค้ดด้านบน มันจะสร้างผลลัพธ์ต่อไปนี้ -
Elements in the vector before updating: 11 22 33 44 55 Last element in vector is: 55 Elements in the vector before updating: 11 22 33 44 66
ตัวอย่าง
ใช้ฟังก์ชัน size()
#include <bits/stdc++.h>
using namespace std;
int main(){
vector<int> vec = {11, 22, 33, 44, 55};
cout<<"Elements in the vector before updating: ";
for(auto i = vec.begin(); i!= vec.end(); ++i){
cout << *i << " ";
}
// call size() for fetching last element
int last = vec.size();
cout<<"\nLast element in vector is: "<<vec[last-1];
vec[last-1] = 66;
cout<<"\nElements in the vector before updating: ";
for(auto i = vec.begin(); i!= vec.end(); ++i){
cout << *i <<" ";
}
return 0;
} ผลลัพธ์
หากเราเรียกใช้โค้ดด้านบน มันจะสร้างผลลัพธ์ต่อไปนี้ -
Elements in the vector before updating: 11 22 33 44 55 Last element in vector is: 55 Elements in the vector before updating: 11 22 33 44 66