이 오류가 발생하고 있습니다. 운영자 < < 기능. 두 지문 모두 공개입니다. 당신이 값을 반환 할 수 있도록오류 C2248 : 'std :: basic_ios <_Elem, _Traits> :: basic_ios': 'std :: basic_ios <_Elem, _Traits>'클래스에 선언 된 전용 멤버에 액세스 할 수 없습니다.
void CRational::print() const
{
print(cout);
}
void CRational::print(ostream & sout) const
{
if(m_denominator == 1)
cout << m_numerator;
else
cout << m_numerator << "/" << m_denominator;
}
ostream operator<<(ostream & sout,const CRational a)
{
a.print();
return sout;
}
CRational operator++() // prefix ++x
{
m_numerator += m_denominator;
return *this;
}
in main:
cout << "e before: " << e << ", \"cout << ++e\" : " << ++e << " after: " << e << endl;
감사합니다. 하지만 새로운 문제가 생겼어. 이 함수를 사용하려고하면 숫자는 거꾸로 돌아가는 방식으로 거꾸로 출력됩니다. – andrey