从 a 转换为 a 的最佳方法是std::array<char, N>
什么std::string
?
我尝试过制作模板方法,但没有运气。我认为我的 C++ 技能还达不到标准。在 C++ 中有没有一种惯用的方式来做到这一点?
我不会说这是“最好的方法”,但一种方法是使用std::string
的迭代器构造函数:
std::array<char, 10> arr;
... // fill in arr
std::string str(std::begin(arr), std::end(arr));
如果数组中有一个以空字符结尾的字符串,那么:
std::array<char, 4> arr = {'a','b','c',0};
std::string str(arr.data());