#include "bag.h" #include #include template class Test { typedef Bag bag_t; bag_t x, y; public: void run (); private: void add (bag_t &bag); void remove (bag_t &bag); void print (const bag_t &bag); }; template void Test::run () { char c; do { std::cout << std::endl << std::endl << "[1] - Elem hozzaadasa X zsakhoz" << std::endl << "[2] - Elem kivetele X zsakbol" << std::endl << "[3] - X zsak tartalmanak kiirasa" << std::endl << "[4] - X zsak kiuritese" << std::endl << std::endl << "[5] - Elem hozzaadasa Y zsakhoz" << std::endl << "[6] - Elem kivetele Y zsakbol" << std::endl << "[7] - Y zsak tartalmanak kiirasa" << std::endl << "[8] - Y zsak kiuritese" << std::endl << std::endl << "[9] - XUY kiirasa" << std::endl << "[0] - Kilepes" << std::endl << std::endl; std::cin >> c; switch (c) { case '1': add (x); break; case '5': add (y); break; case '2': remove (x); break; case '6': remove (y); break; case '3': print (x); break; case '7': print (y); break; case '4': x.clear (); break; case '8': y.clear (); break; case '9': bag_t z = x + y; print (z); break; } } while (std::cin && c != '0'); } template void Test::add (bag_t &bag) { std::cout << "Irjon be egy elemet!" << std::endl; T elem; std::cin >> elem; bag.add (elem); } template void Test::remove (bag_t &bag) { std::cout << "Irjon be egy elemet!" << std::endl; T elem; std::cin >> elem; bag.remove (elem); } template void Test::print (const bag_t &bag) { std::cout << "( "; for (typename bag_t::const_iterator i = bag.begin (); i != bag.end (); ++i) std::cout << *i << ' '; std::cout << ")" << std::endl; } int main (int argc, char **argv) { Test t; t.run (); }