C++20引入了constinit
以避免静态初始化顺序的失败。
constinit
是否可以免除漂亮计数器习惯用法的需要(例如用于初始化std::cout
(?
C++20
constinit
是否可以免除对漂亮计数器习惯用法的需求?
否。
静态初始化顺序的失败只是静态对象的动态初始化阶段的问题。当然,如果您不进行动态初始化,那么就没有问题,constinit
强制执行了这一点。但当您需要动态初始化时,这并不能解决任何问题。