我有一个方法

void func(int bar, std::string_view sv = {})

但现在我想使用设置 sv 的默认值
const char def = 'X'

我如何实现这一目标?谢谢!

最佳答案

单程:

const char def = 'X';
void func(int bar, std::string_view sv = {&def, 1});

请注意,std::string_view sv = {&def, 1} 为没有零终止符的字符串生成 std::string_view,这可能是也可能不是问题。

如果您需要以零结尾的 std::string_view ,则:
std::string_view const def_sv = "X";
void func(int bar, std::string_view sv = def_sv);

要不就:
void func(int bar, std::string_view sv = "X");

关于c++ - 如何使用 const char 初始化 string_view 的默认值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56850591/

10-11 21:32