Может ли C ++ 20 `constinit` отказаться от изящной встречной идиомы? - PullRequest
3 голосов
/ 17 марта 2020

C ++ 20 введено constinit, чтобы избежать статов c фиаско порядка инициализации.

Может constinit отказаться от необходимости идиома изящного счетчика (например, для инициализации std::cout)?

1 Ответ

4 голосов
/ 17 марта 2020

Может ли C ++ 20 constinit отказаться от необходимости использовать отличный счетчик?

Нет.

Stati c Порядок инициализации фиаско является только проблемой с динамической c фазой инициализации статических c объектов. Конечно, если вы не выполняете динамическую инициализацию c, тогда проблем нет, и constinit обеспечивает это. Но это ничего не решает, когда вам нужна динамическая инициализация c.

...