VectorFrontBackResize.cc
#include <iostream> #include <vector> using namespace std; int sum( vector<int> vec ) { int result = 0; vector<int>::iterator p = vec.begin(); while ( p != vec.end() ) result += *p++; return result; } int main() { vector<int> v1(100); //(A) cout << v1.size() << endl; // 100 cout << sum( v1 ) << endl; // 0 v1.push_back( 23 ); //(B) cout << v1.size() << endl; // 101 cout << sum( v1 ) << endl; // 23 v1.reserve( 1000 ); //(C) cout << v1.capacity() << endl; // 1000 cout << v1.size() << endl; // 101 //cout << v1[900] << endl; // undefined cout << sum( v1 ) << endl; // 23 cout << v1.front() << endl; // 0 //(D) cout << v1.back() << endl; // 23 //(E) v1.pop_back(); cout << v1[ v1.size() - 1 ] << endl; // 0 //(F) // vector<int>::iterator p = &v1[50]; //(G) // cout << *p << endl; // 0 vector<int> v2(150, 2); //(H) cout << sum( v2 ) << endl; // 300 v2.resize( 500 ); //(I) cout << v2.size() << endl; // 500 cout << v2[150] << endl; // 0 //(J) v2.clear(); //(K) cout << v2.empty() << endl; // true cout << v2.capacity() << endl; // 500 cout << v2.size() << endl; // 0 v2.resize( 0 ); //(L) cout << v2.capacity() << endl; // 500 cout << v2.size() << endl; // 0 return 0; }
C:\classes\ece538\work\kak05>VectorFrontBackResize 100 0 101 23 1000 101 23 0 23 0 300 500 0 1 500 0 500 0
Maintained by John Loomis, updated Sat Jan 06 20:57:55 2007