gpt4 book ai didi

c++ - 转换运算符如何返回值?

转载 作者:太空狗 更新时间:2023-10-29 23:13:26 26 4
gpt4 key购买 nike

对于 A 类,整数转换运算符看起来像;

operator int() //Here we don't specify any return type
{
return intValue;
}

当其返回值类型似乎未指定时,上述函数如何能够返回值?它似乎没有返回“任何东西”,但我知道它不是 void

当未指定返回类型时,这有什么意义?

最佳答案

operator T() 的返回类型总是T。这是 C++ 的特例。

它不使用标准函数原型(prototype)语法 T foo() 因为两个仅返回类型不同的同名函数不能共存(例如 int foo()double foo() 冲突)。如果使用此语法,则您只能定义 1 个转换运算符重载,这是不可取的。

关于c++ - 转换运算符如何返回值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39231019/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com