Met operator overloading kun je standaardoperatoren (+, <<, ==, etc.) aanpassen zodat ze werken met zelfgemaakte klassen.
Soms heb je toegang nodig tot private members, dan gebruik je friend.
=, [], (), >.friend heeft toegang tot alle private en protected members van de klasse.friend alleen als echt nodig (bijv. operator<<).| Tip | Uitleg |
|---|---|
| β Niet alle operatoren zijn overloadbaar | bv. ?:, ., ::, sizeof |
| β Volgorde en associativiteit blijft hetzelfde | + heeft nog steeds lagere prioriteit dan * |
| β Geef geen nieuwe betekenis aan bekende operatoren | + moet optellen blijven betekenen |
β Gebruik friend alleen als je Γ©cht private data nodig hebt |
|
β Overload == en != samen |
Point