Differences
This shows you the differences between two versions of the page.
| Both sides previous revision
Previous revision
Next revision
|
Previous revision
|
cpp:friend_methods [2020/04/08 14:54] gthanos |
cpp:friend_methods [2021/05/18 07:21] gthanos [Φιλικές Συναρτήσεις] |
| ===== Φιλικές Συναρτήσεις ===== | ===== Φιλικές Συναρτήσεις ===== |
| |
| Μία φιλική συνάρτηση της κλάσης είναι μία συνάρτηση που δεν είναι μέλος της κλάσης, αλλά έχει πρόσβαση στα //private// και //protected// μέλη της κλάσης, όπως θα είχε και μία συνάρτηση μέλος. Για να είναι μία συνάρτηση φιλική (//friend//) θα πρέπει να την δηλώσετε ως τέτοια στη δήλωση της κλάσης. Δείτε το παράδειγμα της συνάρτησης //modifyDimensions// η οποία είναι φίλια συνάρτηση της κλάσης //Rectangle//. Παρατηρήστε ότι η συνάρτηση έχει απευθείας πρόσβαση στα //private// πεδία της κλάσης //Rectangle//. | Μία φιλική συνάρτηση της κλάσης είναι μία συνάρτηση που δεν είναι μέλος της κλάσης, αλλά έχει πρόσβαση στα //private// και //protected// μέλη της κλάσης, όπως θα είχε και μία συνάρτηση μέλος. Για να είναι μία συνάρτηση φιλική (//friend//) θα πρέπει να την δηλώσετε ως τέτοια στη δήλωση της κλάσης. Δείτε το παράδειγμα της συνάρτησης //modifyDimensions// η οποία είναι φιλική συνάρτηση της κλάσης //Rectangle//. Παρατηρήστε ότι η συνάρτηση έχει απευθείας πρόσβαση στα //private// πεδία της κλάσης //Rectangle//. |
| |
| <code cpp Rectangle.hpp> | <code cpp Rectangle.hpp> |
| </code> | </code> |
| |
| <code cpp RectangleUsage.hpp> | <code cpp RectangleUsage.cpp> |
| #include "Rectangle.hpp" | #include "Rectangle.hpp" |
| |