У меня есть некоторые проблемы с проектом C ++, который я начал. Я пытаюсь реализовать базовый связанный список, и моя попытка включает прокси-класс в список списка для представления одного узла. Один из конструкторов списка может получить один параметр и инициализировать с ним первый узел списка, но я не могу передать этот параметр конструктору прокси-класса. Есть предложения как это сделать?
Вот немного кода C ++
template <class TYPE>
class list{
private:
//Proxy class for node representation
class node{
private:
node* next;
TYPE data;
public:
explicit node() : next(nullptr) {}
node (const TYPE& init) : data(init) {}
inline node*& get_next(){
return next;
}
inline TYPE& get_data(){
return data;
}
};
node* head;
unsigned int size;
public:
explicit list() : head(nullptr), size(0) {}
list(const TYPE& init) : list::node(init) {}
Ну, вы должны обратиться к примеру node
а не самому классу. Кроме того, имейте в виду, что head
это указатель в вашем примере.
Попробуйте что-то вроде этого:
list(const TYPE &init) : head(new node(init)) {}
Других решений пока нет …