小编典典

是否可以在 constexpr 中使用 std::string ?

all

使用 C++11、Ubuntu 14.04、GCC 默认工具链

此代码失败:

constexpr std::string constString = "constString";

错误:constexpr 变量“onstString”的类型“onst string {aka const
std::basic_string}”不是字面量…因为…“荣td::basic_string”具有非平凡的析构函数

是否可以std::string在 a中使用constexpr?(显然不是......)如果是这样,怎么办?是否有另一种方法可以在 a
中使用字符串constexpr


阅读 134

收藏
2022-05-26

共1个答案

小编典典

不,你的编译器已经给你一个全面的解释。

但你可以这样做:

constexpr char constString[] = "constString";

在运行时,这可用于std::string在需要时构造一个。

2022-05-26