This is an old revision of the document!
Παρακάτω θα δούμε την υπερφόρτωση τελεστών που δεν μεταβάλλουν τον αριστερό τελεστέο. Οι τελεστές περιγράφονται στον παρακάτω πίνακα.
| Τελεστής | Αριστερός τελεστέος | Δεξιός τελεστέος | Περιγραφή | Φιλική μέθοδος |
|---|---|---|---|---|
| + | Vector | Vector | Επιστρέφει ένα νέο αντικείμενο τύπου Vector που κάθε στοιχείο του προκύπτει από το άθροισμα των στοιχείων των δύο τελεστεών τύπου Vector | και τα δύο (η φιλική συνάρτηση σε σχόλια) |
| - | Vector | Vector | Επιστρέφει ένα νέο αντικείμενο τύπου Vector που κάθε στοιχείο του προκύπτει από τη διαφορά των στοιχείων των δύο τελεστεών τύπου Vector | Όχι |
| + | Vector | int | Επιστρέφει ένα νέο αντικείμενο τύπου Vector που κάθε στοιχείο του προκύπτει από το άθροισμα του αντίστοιχου στοιχείου του Vector με τον ακέραιο | Όχι |
| + | int | Vector | Επιστρέφει ένα νέο αντικείμενο τύπου Vector που κάθε στοιχείο του προκύπτει από το άθροισμα του αντίστοιχου στοιχείου του Vector με τον ακέραιο | Ναι |
| - | Vector | int | Επιστρέφει ένα νέο αντικείμενο τύπου Vector που κάθε στοιχείο του προκύπτει από τη διαφορά του αντίστοιχου στοιχείου του Vector με τον ακέραιο | Όχι |
| * | Vector | int | Επιστρέφει ένα νέο αντικείμενο τύπου Vector που κάθε στοιχείο του προκύπτει από το γινόμενο του αντίστοιχου στοιχείου του Vector με τον ακέραιο | Όχι |
| * | int | Vector | Επιστρέφει ένα νέο αντικείμενο τύπου Vector που κάθε στοιχείο του προκύπτει από το γινόμενο του αντίστοιχου στοιχείου του Vector με τον ακέραιο | Ναι |
| / | Vector | int | Επιστρέφει ένα νέο αντικείμενο τύπου Vector που κάθε στοιχείο του προκύπτει από την ακέραια διαίρεση του αντίστοιχου στοιχείου του Vector με τον ακέραιο | Όχι |
| % | Vector | int | Επιστρέφει ένα νέο αντικείμενο τύπου Vector που κάθε στοιχείο του προκύπτει από το υπόλοιπο της ακέραιας διαίρεσης του αντίστοιχου στοιχείου του Vector με τον ακέραιο | Όχι |
| << | Vector | int | Επιστρέφει ένα νέο αντικείμενο τύπου Vector στο οποίο έχει προστεθεί ο δεξιός τελεστέος. Το νέο αντικείμενο έχει μέγεθος κατά ένα μεγαλύτερο του αριστερού τελεστέου. | και τα δύο (η φιλική συνάρτηση σε σχόλια) |
| >> | Vector | int | Επιστρέφει ένα νέο αντικείμενο τύπου Vector στο οποίο έχει διαγραφεί ο δεξιός τελεστέος, εφόσον αυτός υπάρχει. Το νέο αντικείμενο έχει μέγεθος κατά ένα μικρότερο του αριστερού τελεστέου, εάν βρεθεί ο δεξιός τελεστέος μέσα στο Vector. Εάν δεν βρεθεί επιστρέφεται ένα αντικείμενο που περιέχει τα στοιχεία του αριστερού τελεστέου. | και τα δύο (η φιλική συνάρτηση σε σχόλια) |
Όταν έχετε μία φιλική μέθοδο και ένα μέλος της κλάσης που υλοποιούν την ίδια λειτουργικότητα υπερφόρτωσης, κατά τη χρήση του αντίστοιχου τελεστή χρησιμοποιείται (υπερισχύει) η συνάρτηση μέλος της κλάσης.
Από τα παραπάνω παρατηρούμε τα εξής: