Я сейчас пытаюсь узнать, как использовать библиотеку boost, и наткнулся на проблему с boost :: intrusive :: splay_set (или splaytree в этом отношении).
Давайте предположим, что я хочу иметь Splay Tree, который сохраняет указатели на класс Category (поэтому Category *). Я пытаюсь написать следующее
splay_set<Category*, compare<std::greater<Category*>>> CategoriesSplay
К сожалению, это не работает. Я не буду писать ошибки, которые он генерирует, так как он превышает 100, а Visual Studio завершает процесс компиляции.
Затем я попытался изменить класс, чтобы мой класс Category расширялся до
class Category : public splay_set_base_hook<link_mode<auto_unlink>, Category*>
Опять не повезло. изменение Category * во втором коде на void_pointer (Category) также не работает. К сожалению, поддержка документации не помогает в добавлении указателей к навязчивым наборам сплайнов.
У кого-нибудь есть решение моей проблемы? Заранее спасибо.