text: #include "common.hpp"
  
  #define TESTED_TYPE int
  
  void	prepost_incdec(TESTED_NAMESPACE::vector<TESTED_TYPE> &vct)
  {
  	TESTED_NAMESPACE::vector<TESTED_TYPE>::iterator it = vct.begin();
  	TESTED_NAMESPACE::vector<TESTED_TYPE>::iterator it_tmp;
  
  	std::cout << "Pre inc" << std::endl;
  	it_tmp = ++it;
  	std::cout << *it_tmp << " | " << *it << std::endl;
  
  	std::cout << "Pre dec" << std::endl;
  	it_tmp = --it;
  	std::cout << *it_tmp << " | " << *it << std::endl;
  
  	std::cout << "Post inc" << std::endl;
  	it_tmp = it++;
  	std::cout << *it_tmp << " | " << *it << std::endl;
  
  	std::cout << "Post dec" << std::endl;
  	it_tmp = it--;
  	std::cout << *it_tmp << " | " << *it << std::endl;
  	std::cout << "###############################################" << std::endl;
  }
  
  int		main(void)
  {
  	const int size = 5;
  	TESTED_NAMESPACE::vector<TESTED_TYPE> vct(size);
  	TESTED_NAMESPACE::vector<TESTED_TYPE>::iterator it = vct.begin();
  	TESTED_NAMESPACE::vector<TESTED_TYPE>::const_iterator ite = vct.begin();
  
  	for (int i = 0; i < size; ++i)
  		it[i] = (size - i) * 5;
  	prepost_incdec(vct);
  
  	it = it + 5;
  	it = 1 + it;
  	it = it - 4;
  	std::cout << *(it += 2) << std::endl;
  	std::cout << *(it -= 1) << std::endl;
  
  	*(it -= 2) = 42;
  	*(it += 2) = 21;
  
  	std::cout << "const_ite +=: " << *(ite += 2) << std::endl;
  	std::cout << "const_ite -=: " << *(ite -= 2) << std::endl;
  
  	std::cout << "(it == const_it): " << (ite == it) << std::endl;
  	std::cout << "(const_ite - it): " << (ite - it) << std::endl;
  	std::cout << "(ite + 3 == it): " << (ite + 3 == it) << std::endl;
  
  	printSize(vct, true);
  	return (0);
  }
  