如何解决可以将空字符串文字传递给用户定义的原始文字运算符吗?
npm run serve -- ---port 8000
这为我们提供了另一种更简单的方法来生成仅包含整数字符的 #include <string>
std::string operator""_s(const char* s) {
return s;
}
:
std::string
auto s1 = 012345_s; // s1 is "0123456"s
auto s2 = 0_s; // s2 is "0"s
解决方法
单参数形式 T operator""_s(const char* s)
只是整数和浮点类型的后备情况。
处理用户定义的字符串文字的正确方法是通过 T operator""_s(const CharT* s,size_t sz)
。
#include <string>
std::string operator""_s(const char* s) {
return s;
}
std::string operator""_s(const char* s,size_t sz) {
return {s,sz};
}
int main()
{
auto s1 = 012345_s;
auto s2 = 0_s;
auto s3 = ""_s;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。