我意识到这不是最有效的做法,但是像第 4 行中那样创建用于连接的临时 std::string 对象是否可以被大多数人接受?
1 constexpr const char* const a = "这是"; 2 constexpr const char* const b = "一个测试。"; 3个 4 std::string s2 = std::string(a) + std::string(b); 5 std::cout << "*** " << s2 << std::endl;
我必须在许多以前使用 std::string 连接的地方更新一些使用代码来使用这些 constexpr 字符串常量,并且似乎更容易放入一些 std::string(...) 构造函数来更新快速编码。
这在我列出的 Visual C++ 中有效,并且似乎在支持 C++14 的 gcc 版本中编译(还需要测试)。