好的,所以我创建了自己的类,我重载了一个运算符""s
,所以我可以用它来形成字符串。
但是,我在编译时遇到错误,我不知道它意味着什么。 有人可以解释它的含义以及如何解决它吗?
我的代码:
PString operator"" s(const char* text, std::size_t len) {
return PString(std::string(text, len));
}
我的错误:
error: ‘PString PString::operator""s(const char*, std::size_t)’ must be a non-member function
PString operator"" s(const char* text, std::size_t len) {
答案 0 :(得分:0)
好的,所以在提出这个问题之前,我对某些事情感到困惑。因为我已经在类中添加了其他运算符覆盖,我认为我应该在类中添加operator"" s
。但显然,情况并非如此。
我保留这个作为@ user0042给我的答案的参考。
这就解决了我的问题。