У меня есть шаблон класса так:
template<class T>
class List
{
private:
struct node
{
T value;
node *next, *prev;
};
}
При создании экземпляров этого класса List с T = myClass * У меня нет проблем, поскольку значение будет указателем, но если это объект, создание экземпляра узла приводит к ошибке «Нет доступного конструктора по умолчанию», если класс не имеет конструктора по умолчанию.
Я мог бы решить эту проблему, изменив значение T на значение T *, но мне нужно иметь копии этих значений внутри списка, чтобы в случае их удаления вне списка они оставались действительными здесь.
Каков будет правильный путь к этому?