Przeciążenie wejścia a return

0

Jeżeli napiszę przeciążenie dla >>, w którym używam return x; to jak potem tego używać? Chodzi mi o np. coś takiego:

istream& operator >> (istream& Strm, int& alg)
{
	Strm >> alg;
	if(alg>10) return 1;
        return 0;
}

i gdzieś indziej chcę się do tych returnów odwołać. coś w stylu

 if((cin>>alg)==0)

to ja mogę tak zrobić? A jeżeli nie to czym to zastąpić?

0

To nie jest dobry pomysł, ale...

bool operator>>(istream& Strm, int& alg){
    Strm >> alg;
    return alg>10;
}

ale możesz dowolnie manipulować funkcją, byleby pasowała do schematu.

1

Operator się przeciąża dla typu własnego, który nie ma jeszcze obsługi tego operatora. Nie należy przy tym zmieniać konwencji, np. operatory strumieni zwracają te strumienie, a nie jakieś wartości widzimisie.
To co próbujesz zrobić nadaje się do zwykłej, sensownie nazwanej funkcji.

1 użytkowników online, w tym zalogowanych: 0, gości: 1