Наследование с шаблонами.
От: alexnik  
Дата: 09.12.11 04:24
Оценка:
Здравствуйте! У меня возникла проблема при реализации наследования:
template <class T>
class super_array{
    protected:
        unsigned int size, curFile;// size of sorter; number of last file we used
    public:
        super_array(unsigned int x = 2, string file = "outp"){
            sizeOp = x;
            out = file;
            size = 0;
            curFile = 0;
        }
        ~super_array(){
            for (int i = 1; i <= curFile; ++ i){                
                remove(intToStr(i).c_str());
            }
        }
        void push(T& x);
        T getNext();
        bool empty();
};

template <class T>
class sorter : public super_array<T>{
    public:
        void push(T& x);
        T getNext();
        void sorting();
        bool empty();
};

template <class T>
class shuffler : public super_array<T>{
    public:
        void push(T& x);
        T getNext();
        void shuffling();
        bool empty();
};
template<class T>
void sorter<T>::sorting(){ 
}


Когда я описываю sorting, компилятор ругается, что не описаны переменные size и curFile. А когда вызывается конструктор для sorter не вызывается конструктор super_array, хотя по идее должен. Помогите, пожалуйста, разобраться в чем дело.
ооп
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.