Ну виртуальные методы это конечно круто, но мне нужно переопределить методы с помощью шаблонов (и у меня даже успешно получилось для Texture2D и других не шаблонных классов, вопрос только почему оно не работает для таких классов, как Shader).
В классах Texture2D, Shader и т.п. постоянно повторяется один и тот же код мув конструтора и мув оператора присваивания. Естественно я захотел вынести это в базовый класс, который бы управлял ресурсом (определял мув конструтор и мув оператор присваивания, сам создавал и освобождал ресурс). Этот базовый класс это RAII. Только все объекты создаются и освобождаются по-разному и для этого я хочу переопределить методы RAII::constructor и RAII::destructor. Для не шаблонного класса всё отлично работает, но для шаблонных уже нет и я не могу понять почему.
Я просто хочу переопределить методы базового класса без виртуальных методов!
Станислав Макаров, Element это элементы односвязного списка которые хранят переменные произвольного численного типа, которым нужна возможность прибавить к себе значение другого элемента списка.
На самом деле в проекте там двусвязный список и методов чуть больше.
В программе нужно иметь указатель, который указывает на элемент с которыми нужно работать (к которому нужно прибавить значение другого элемента, вывести его значение в терминал, или удалить его вовсе). И этот указатель имеет тип Base * + в Base хранится указатель на предыдущий и следующий элемент чтобы можно было перемещаться по списку.
Я пытался собрать библиотеку из исходников, которые я скачал из официального сайта и ничего не работало.
Решил использовать исходники из гитхаба и всё отлично собралось! Спасибо Вам большое!