Здравствуйте, kodermax, Вы писали:
K>Есть шаблонная очередь с использованием vector
K>Как инстанцировать для своего класса, представляющего строку, изготовленную из vector<char>?
K>K>template <class T> class mydeque {
K>protected:
K> vector<T> first; //первый вектор - используется для вставки в начало очереди
K> vector<T> second; //второй вектор - используется для вставки в конец очереди
K>public:
K> mydeque()
K> {
K> };
K> ~mydeque()
K> {
K> };
K> void shift(const T& val) // функция добавления элемента в начало очереди
K> {
K> first.push_back(val);
K> }
K> void push(const T& val) //функция добавления элемента в конец очереди
K> {
K> second.push_back(val);
K> }
K> void print()
K> {
K> vector<T>::iterator cur;
K> for (cur=first.begin();cur<first.end();cur++)
K> cout<<*cur;
K> for (cur=second.begin();cur<second.end();cur++)
K> cout<<*cur;
K> }
K>private:
K>};
K>
Как инстанцировать ? Да как обычно (обратите внимание на пробел между закрывающими угловыми скобками):
mydeque<vector<char> > Deque;
Только строку vector<T>::iterator cur в методе print нужно дополнить ключевым словом typename:
typename vector<T>::iterator cur;