Код | #include <iostream> using namespace std;
class List { protected: int myvalue; List *myNext; public: List(int value) { myvalue = value; myNext = 0; } void addvalue(int value) { List *current = this; while (current -> myNext != 0) { current = current -> myNext; } current -> myNext = new List(value); } int length() { int сounter = 0; for(List *current = this; current != 0; current = current -> myNext) { сounter++; } return сounter; } void print() { for(List *current = this; current != 0; current = current -> myNext) { cout << current->myvalue << endl; } } }; class Doublelist : public List { private: List *myPrevious; public: Doublelist(int value) : List(value) { myPrevious = 0; } void addvalue(int value) { Doublelist *current = this; while (current -> myNext != 0) { current = (Doublelist)current -> myNext; } current -> myNext = new Doublelist(value); ((Doublelist)current -> myNext) -> myPrevious = current; } }; |
Взял пример кода из лекции, но у меня почему то не работает, выдет ошибку: IntelliSense: не существует подходящего конструктора для преобразования из "List *" в "Doublelist" В 55 и 58 строках. Модератор: не забываем пользоваться кнопочкой "Код" |