2017-10-25 4 views
-3

동일한 유형의 자식이있는 클래스가 있고 ostream 참조를 사용하는 함수로 모두 데이터를 가져 오려고합니다. 지금까지 나는이 코드를 가지고,하지만 난 오류가 점점 오전 : 나는 거기에 모여재귀 ostream 함수 C++

"이진 표현에 유효하지 않은 피연산자 ('ostream에'(일명 'basic_ostream')와 'ostream에')"

ostream& print(ostream& myOstream) { 

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

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

    return myOstream; 
} 

을 함수 반환 값에 문제가 ostream에 인쇄? 나는 이것을 잠시 동안 고치려고 노력했기 때문에 어떤 도움을 주셔서 감사합니다! 감사.

+0

'어쩌면 당신은 의미 myOstream'을 반환합니다. – Raindrop7

+2

[mcve]를 제공하십시오. '아이 '란 무엇입니까? '밖으로'무엇입니까? 'objectData'는 무엇입니까? 오류가보고 된 행은 무엇입니까? 어떻게'print'라고 부르니? –

+0

당신은 정말로 질문하는 법을 배워야하고, 아마도이 https://stackoverflow.com/questions/36292905/using-a-recursive-function-as-output-in-a-ostream-function의 복제본을 배울 필요가 있습니다. – Frrank

답변

1

당신은 아이를 인쇄하지 결과를 출력한다 :

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

감사! 내가 이전에 그것을 어떻게 시도하지 않았는지 모르겠다. 완벽하게 작동합니다. –