문제

I have my class for example TEST in TEST.h I have

friend ostream& operator<< (ostream& out, const test& outstr);

in TEST.cc

ostream& operator <<(ostream& out, test& strout) { out<< "TEST"; return out; }

in main test x; cout<< x;

I recieve error message: error: undefined reference to `operator<<(std::basic_ostream >&, test const&)

whats the problem?

도움이 되었습니까?

해결책

You have const in the declaration:

friend ostream& operator<< (ostream& out, const test& outstr);

and no const in the implementation:

ostream& operator <<(ostream& out, MISSING CONST test& strout)

Adding const to the implementation should solve your issue.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top