递归ostream函数c ++

时间:2017-10-25 13:49:50

标签: c++ c++11 recursion ostream

我有一个具有相同类型子节点的类,我想从它们中获取所有带有ostream引用的函数的数据。到目前为止,我有这个代码,但我收到一个错误:

"二进制表达式的操作数无效(' ostream'(又名' basic_ostream')和' ostream')"

ostream& print(ostream& myOstream) {

    if(child!=nullptr){
        myOstream << child->write(myOstream);
    }

    myOstream << " " << objectData << " ";

    return myOstream;
}

我在那里收集了函数返回值的问题并将其打印到ostream?我已经尝试解决这个问题很长一段时间了,所以不胜感激!感谢。

1 个答案:

答案 0 :(得分:1)

您不应该输出打印孩子的结果:

if (child != nullptr){
    child->write(myOstream);
}