Exemplo n.º 1
0
int main()
{
	IntVector v;
	for ( int i = 0; i < 100; i++ )
	{
		v.set( i , i );
	}
	for ( int i : v ) { cout << i << endl; }
}
Exemplo n.º 2
0
void test_set()
{
	IntVector test;
//	test.set(0, 2);
//	cerr << "Set test should error.\n";
	test.add(5);
	test.add(7);
	test.set(1,10);
	cerr << "Set test (10): " << test.get(1) << "\n";
}
Exemplo n.º 3
0
int main() {
  // Vector's random access iterator
  vector<int> intVector;
  intVector.push_back(1);
  intVector.push_back(2);
  intVector.push_back(3);
  cout << endl << "const iterator values: ";
  for (auto iter = intVector.cbegin(); iter != intVector.cend(); iter++) {
    cout << *iter;
    //(*iter)++; // Can't be done because .cbegin returns const iterator.
  }

  cout << endl << "iterator values: ";
  for (auto iter = intVector.begin(); iter != intVector.cend(); iter++) {
    cout << *iter;
    (*iter) *= 10;
  }

  // The random access iterator can be used to access the nth item.
  cout << endl << "Random access iterator: "
    << *(intVector.cbegin() + 0)
    << *(intVector.cbegin() + 1)
    << *(intVector.cbegin() + 2);
    // << *(intVector.cbegin() + 3); -- Crashes because out of range.  Iterators do not provide bounds checking.

  // Iterators can be used to operate on a range of values.
  intVector.erase(intVector.cbegin(), intVector.cbegin() + 1);

  cout << endl << "After .erase(): ";
  for (const auto &i : intVector) { cout << i; }

  cout << endl << "Custom iterator: ";
    IntVector v;
    for (auto i = 0; i < 100; i++) {
      v.set(i, i);
    }
    for (const auto i : v) { cout << i; }

  cout << endl << "[Press enter to exit]" << endl;
  cin.ignore();
  return 0;
}