xxxxxxxxxx
#include <iostream>
#include <vector>
int main() {
std::vector<int> nums = {1, 2, 3, 4, 5};
// Method 1: Using negative index
int lastElem1 = nums[nums.size() - 1];
// Method 2: Using back() function
int lastElem2 = nums.back();
std::cout << "Last element (Method 1): " << lastElem1 << std::endl;
std::cout << "Last element (Method 2): " << lastElem2 << std::endl;
return 0;
}
xxxxxxxxxx
vector<int> v;
cout << v[v.size() - 1];
cout << *(v.end() - 1);
cout << *v.rbegin();
// all three of them work
xxxxxxxxxx
// Accessing last element
cout << v.back() << endl;
// modifying last element
v.back() = 100;
xxxxxxxxxx
vector<int> vec;
vec.push_back(0);
vec.push_back(1);
int last_element = vec.back();
int also_last_element = vec[vec.size() - 1];
xxxxxxxxxx
arr2.rbegin()[1] // rbegin() is reverse order starting at 0 for last element, 1 for second-last