相关疑难解决方法(0)

什么是C ++ 20中的“ constinit”?

constinitP1143中提出的C ++ 20中的新关键字说明

标准中提供了以下示例:

const char * g() { return "dynamic initialization"; }
constexpr const char * f(bool p) { return p ? "constant initializer" : g(); }
constinit const char * c = f(true);     // OK
constinit const char * d = f(false);    // ill-formed
Run Code Online (Sandbox Code Playgroud)

我想到了几个问题:

  • 什么constinit意思 为什么要引入?在什么情况下我们应该使用它?

  • 它使变量不可变吗?是暗示const还是constexpr

  • 变量可以是constconstinit吗?怎么样constexprconstinit

  • 可以将说明符应用于哪些变量?为什么我们不能将其应用于staticthread_local变量?

  • 有性能优势吗?

该问题旨在作为 …

c++ c++20 constinit

24
推荐指数
1
解决办法
1017
查看次数

标签 统计

c++ ×1

c++20 ×1

constinit ×1