1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
     22
     23
#include <iostream>
#include "IntegerSequence.hpp"

void print(const IntegerSequence& is) {
   for (std::size_t i = 0; i < is.length(); ++i) {
      std::cout << " " << is(i);
   }
   std::cout << std::endl;
}

int main() {
   IntegerSequence iseq;
   int value;
   while (std::cin >> value) {
      iseq.add(value);
   }
   std::cout << "iseq: "; print(iseq);
   IntegerSequence iseq2 = iseq; // copy constructor
   iseq2.add(42);
   std::cout << "iseq2: "; print(iseq2);
   iseq = iseq2; // copy it back
   std::cout << "iseq: "; print(iseq);
}