关于标准库的一些总结:
vector::back() Returns a reference to the last element in the vector. Unlike member vector::end, which returns an iterator just past this element, this function returns a direct reference.
Calling this function on an empty container causes undefined behavior.
// vector::back
#include <iostream>
#include <vector>
int main ()
{
std::vector<int> myvector;
myvector.push_back(9);
while (myvector.back() != 0)
{
myvector.push_back ( myvector.back() -1 );
}
std::cout << "myvector contains:";
for (unsigned i=0; i<myvector.size() ; i++)
std::cout << ' ' << myvector[i];
std::cout << '\n';
return 0;
}
Outputs: myvector contains: 10 9 8 7 6 5 4 3 2 1 0
Vector::popback() Delete last element
// vector::pop_back
#include <iostream>
#include <vector>
int main ()
{
std::vector<int> myvector;
int sum (0);
myvector.push_back (100);
myvector.push_back (200);
myvector.push_back (300);
while (!myvector.empty())
{
sum+=myvector.back();
myvector.pop_back();
}
std::cout << "The elements of myvector add up to " << sum << '\n';
return 0;
}
Outputs: The elements of myvector add up to 600