【发布时间】:2017-09-13 06:58:40
【问题描述】:
在编译以下代码时,出现错误:
表达式.h
class Expression{
...
protected:
std::ostream Os;
};
表达式.c
Expression::Expression() : Os(std::cout)
{
...
}
Expression::Expression(std::ofstream &os) : Os(os)
{
...
}
Expression::Dump()
{
Os << "=============================================================" << std::endl;
Os << "Os: " << Os << std::endl;
}
错误:'operator' 和 'std::ostream {aka std::basic_ostream
}')
我的错误是什么?我该怎么做才能解决它?
同时给像Os(std::cout)这样的参数赋予初始值,这是什么意思?
【问题讨论】:
-
您能尝试创建一个Minimal, Complete, and Verifiable Example 并展示给我们看吗?也请read about how to ask good questions.
-
您希望通过流式传输
ostream来做什么?尤其是向自己发送ostream?! -
operator <<确实像 documented 一样工作。看来您没有阅读文档,也没有足够关心错误消息。
标签: c++ gcc compiler-errors ostream