Code :
#include <vector> #include <list> #include <iostream> // operator += qui permet l'hétérogénéité des types template < typename T, typename DestAlloc, template <typename, typename> class DestCont, typename SrcAlloc, template <typename, typename> class SrcCont> DestCont<T, DestAlloc> & operator+=(DestCont<T, DestAlloc>& dest, const SrcCont<T, SrcAlloc>& src) { std::copy(src.begin(), src.end(), std::back_inserter(dest)); return dest; } int main() { std::vector<int> a; std::list<int> b; for (int i=0; i<10; ++i) a.push_back(i*i); for (int i=0; i<10; ++i) a.push_back(i+i); a += b; return 0; }
|