我遇到了下面的代码,类的方法让我很困惑
class X
{
......
operator string () const {return "X"}
......
}
通常返回类型在方法之前。如果有人可以解释此声明的作用以及有关此声明的详细信息,我将不胜感激
最佳答案
这不是一个返回 string
的 operator()
以一种奇怪的方式编写(正如您可能认为的那样),它是一个隐式转换运算符,可以使用将 X
类型转换为 string
类型:
X a;
string B = static_cast<string>(a);
另外,看看 this question .
关于c++ - 无法理解此语句 - 运算符后的返回类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19288647/