All pastes #758686 Raw Edit

Something

public text v1 · immutable
·published 2007-11-02 13:36 UTC
rendered paste body
#ifndef ZSAK_H
#define ZSAK_H
#include <list>
#include <iostream>

using namespace std;

enum Hibak {NemLetezoElem};

template<class ElemTipus>
class lista_elemei
{
    ElemTipus elem;
    int m;

    lista_elemei(const ElemTipus &elem_) { m=1; elem=elem_; }
};

template<class ElemTipus>
class Zsak
{
    public:
        void add(ElemTipus &elem_, int m_=1);
        void remove(ElemTipus &elem_);
        int mul(ElemTipus &elem_);
        istream& operator>> (istream &be, Zsak<ElemTipus> &zsak_);
        ostream& operator<< (ostream &ki, Zsak<ElemTipus> &zsak_);

    private:

        list<lista_elemei<ElemTipus>> lista;
        typedef typename list<lista_elemei<ElemTipus>>::iterator lista_iterator;
        lista_iterator find(const ElemTipus &elem_);

    friend:
        Zsak<ElemTipus> unio(Zsak<ElemTipus> zsak1, Zsak<ElemTipus> zsak2);

};

#endif