История изменений
Исправление trex6, (текущая версия) :
У меня из похожего есть только работа с текстурами.
Сделано это так: В статическую функцию (член класса GLTexture) передается «путь» к текстуре (что-то вида «/interface/icon/home»), внутри функции создается текстура, заворачивается в самописный хитрый «указатель» и добавляется в список уже сущесвтвующих текстур.
При повторной попытке создания такой же точно текстуры будет возвращен еще один хитрый «указатель» на нее.
Как только все указатели на ресурс в программе уничтожены - он выгружается из памяти.
Хитрый указатель виден пользователю как объект класса GLTexture, у которого в паблик торчит только конструктор копирования, а остальные конструкторы в привате.
P.S. Если я правильно понял, о чем ты вообще написал.
Исходная версия trex6, :
У меня из похожего есть только работа с текстурами.
Сделано это так: В статическую функцию (член класса GLTexture) передается «путь» к текстуре (что-то вида «/interface/icon/home»), внутри функции создается текстура, заворачивается в самописный хитрый «указатель» и добавляется в список уже сущесвтвующих текстур.
При повторной попытке создания такой же точно текстуры будет возвращен еще один хитрый «указатель» на нее.
Как только все указатели на ресурс в программе уничтожены - он выгружается из памяти.
P.S. Если я правильно понял, о чем ты вообще написал.