в нём есть чисто виртуальные функции. Так же от него наследуются другие классы.
Выдаёт ошибку no default constructor exists for class "std::reference_wrapper<std::unique_ptr<AbstractClass, std::default_delete<AbstractClass>>>"
Пробовал вот такое, но не помогло:
std::reference_wrapper<std::unique_ptr<AbstractClass>> ptr(std::unique_ptr<AbstractClass>(nullptr));
Пробовал дописать AbstractClass() = default; но тоже не спасло.
Как это можно фиксануть?
А зачем вообще нужен тут reference_wrapper? Кто владеет объектом? Зачем брать ссылку именно на unique_ptr?
Логично, потому что вопрос не в юнике, а в референс_враппере. С таким вопросом в супу бы
насколько я знаю такой уникальный поинтер должен компилироваться нормально, не знаю уж что ты такое делаешь что у тебя ссылка на указатель... есть какой то минимальный вариант, что тебе подойдет std::declval(но этим значением пользоваться нельзя)
Совет из серии "давайте оптимизируем this". std::declval вообще про другое
я знаю про что оно, но друг он пишет какой то шаблон
std::declval для unevaluated context. Не вижу его в вопросе.
Обсуждают сегодня