Class template recursive_wrapper
boost::recursive_wrapper — Solves circular dependencies, enabling recursive types.
Synopsis
Description
Шаблон класса recursive_wrapper
имеет интерфейс, аналогичный простому контейнеру значений, но его содержание распределено динамически. Это позволяет recursive_wrapper
удерживать типы T
, чьи данные-члены приводят к круговой зависимости (например, член данных T
имеет член данных типа T
).
Применение recursive_wrapper
проще всего понять в контексте. См. секцию под названием “ Рекурсивные типы с recursive_wrapper
” для демонстрации общего использования шаблона класса.
Заметки:
- Любой тип, указанный как аргумент шаблона к
recursive_wrapper
должен быть способен на строительство через оператор новый
. Так, например, ссылки не поддерживаются.
recursive_wrapper
public
construct/copy/destruct