c – 为什么分配给std :: ostream的引用无法编译?

c – 为什么分配给std :: ostream的引用无法编译?,第1张

概述我正在使用抽象类std :: ostream.有以下参考: std::ostream &o = std::cout; 如果满足任何条件,我需要初始化o,以便将输出重定向到std :: cout.如果没有,输出将被重定向到该文件 if (!condition) o = file; //Not possible 如何正确编写代码? 你不能重新引用参考. 这是一个选择: std::ostream 我正在使用抽象类std :: ostream.有以下参考:
std::ostream &o = std::cout;

如果满足任何条件,我需要初始化o,以便将输出重定向到std :: cout.如果没有,输出将被重定向到该文件

if (!condition)    o = file; //Not possible

如何正确编写代码?

解决方法 你不能重新引用参考.

这是一个选择:

std::ostream &o = (!condition) ? file : std::cout;
总结

以上是内存溢出为你收集整理的c – 为什么分配给std :: ostream的引用无法编译?全部内容,希望文章能够帮你解决c – 为什么分配给std :: ostream的引用无法编译?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1253014.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存