Stl::list

  • Автор темы Sermak
  • Дата начала
S

Sermak

Гость
#1
Помогите пожалууууйста
Код:
template <class Weight, class Data>
class Edge
{
//данные, конструкторы и тп
};

template <class TData, class TEdge>
class BaseGraph
{
std::list<TEdge> *list_edge; 
};

int main ()
{
BaseGraph<int, Edge<int, int>>  graph; // думаю, что здесь что то не правильно 
}
//////////////////////////////////////////

//ошибка в LIST.H (библиотека) : Illegal structure operation 

template <class T>
void list<T>::merge (list<T>& x)
{
iterator first1 = begin();
iterator last1 = end();
iterator first2 = x.begin();
iterator last2 = x.end();
while (first1 != last1 && first2 != last2)
{
if (*first2 < *first1) // ошибка здесь
{
iterator next = first2;
transfer(first1, first2, ++next);
first2 = next;
}
else
first1++;
}
if (first2 != last2) transfer(last1, first2, last2);
length += x.length;
x.length = 0;
}