Я внедряю сборщик мусора для личного использования в С++ 0x, и у меня есть вопрос. Очевидно, что механики коллектора зависят от движущихся объектов, и мне было интересно, как реализовать это с точки зрения типов интеллектуального указателя, которые указывают на него. Я думал о любом указателе на указатель в самом типе указателя, или коллекционер поддерживает список указателей, указывающих на каждый объект, чтобы их можно было модифицировать, устраняя необходимость двойного исправления при доступе указатель, но добавив некоторые дополнительные накладные расходы во время сбора и дополнительных издержек памяти. Какой лучший способ пойти сюда?
Изменить: Моя главная проблема заключается в быстром распределении и доступе. Меня не интересуют особенно эффективные коллекции или другое обслуживание, потому что это не то, для чего предназначен GC.