繁体   English   中英

无法理解此语句-运算符后的返回类型

[英]Cant understand this statement - Return Type after operator

我遇到了以下代码,该类的方法使我感到困惑

class X
{
    ......
    operator string () const {return "X"}
    ......
}

通常,返回类型在方法的前面。 如果有人可以解释此声明的内容以及有关此声明的详细信息,我将不胜感激

转换运算符是一种特殊的成员函数,可将类类型的值转换为某种其他类型的值。 通常看起来像这样:

operator type() const;

其中type表示类型。 在您的示例中,它用于将X类的值隐式转换为string

这不是一个以奇怪的方式(如您可能想到的)返回的string返回的operator() ,它是一个隐式转换运算符,可用于将X类型转换为string类型:

X a;
string B = static_cast<string>(a);

另外,看看这个问题

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM