为什么这个函数的返回值类型是引用呢?也不需要改变值,为什么还要用引用呢?
3条回答 默认 最新
- Kwan的解忧杂货铺@新空间代码工作室 2024-05-11 17:02关注
下午好🌅🌅🌅
本答案参考ChatGPT-3.5为什么这个函数的返回值类型是引用呢?也不需要改变值,为什么还要用引用呢?
-
这里是重载了流插入运算符 << ,其返回类型应该是 ostream 类型。为了支持链式调用,在输出完数据后要返回 ostream 对象本身,这样才能继续进行链式操作。例如 cout << "Hello" << World",这里就需要重载函数的返回值为 ostream 对象本身,否则第二个输出操作无法执行。
-
用引用作为返回值的好处是可以避免对返回值进行复制操作,提高程序的效率和性能。因此,这个函数的返回值类型是可修改和提高效率的 ostream & 引用类型。
修改后的函数如下:
ostream& operator<<(int n) { // 输出n的代码 return *this; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用 -
悬赏问题
- ¥15 麒麟V10桌面版SP1如何配置bonding
- ¥15 Marscode IDE 如何预览新建的 HTML 文件
- ¥15 K8S部署二进制集群过程中calico一直报错
- ¥15 java python或者任何一种编程语言复刻一个网页
- ¥20 如何通过代码传输视频到亚马逊平台
- ¥15 php查询mysql数据库并显示至下拉列表中
- ¥15 freertos下使用外部中断失效
- ¥15 输入的char字符转为int类型,不是对应的ascall码,如何才能使之转换为对应ascall码?或者使输入的char字符可以正常与其他字符比较?
- ¥15 devserver配置完 启动服务 无法访问static上的资源
- ¥15 解决websocket跟c#客户端通信