cpp:constructors
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
cpp:constructors [2020/04/14 07:34] – gthanos | cpp:constructors [2020/04/14 07:44] – [Χρήση member initialization list για την αρχικοποίηση των μελών της κλάσης] gthanos | ||
---|---|---|---|
Line 17: | Line 17: | ||
int getHeight() const; | int getHeight() const; | ||
}; | }; | ||
+ | </ | ||
+ | |||
+ | <code cpp Rectangle.cpp> | ||
+ | #include " | ||
Rectangle:: | Rectangle:: | ||
width = w; height = h; | width = w; height = h; | ||
} | } | ||
- | |||
void Rectangle:: | void Rectangle:: | ||
void Rectangle:: | void Rectangle:: | ||
Line 36: | Line 39: | ||
return 0; | return 0; | ||
} | } | ||
+ | </ | ||
+ | |||
+ | Για την μεταγλώττιση αρκεί να μεταγλωττισετε κάθε επιμέρους κλάση ξεχωριστά και στη συνέχεια να δημιουργήσετε το τελικό εκτελέσιμο. Στο συγκεκριμένο παράδειγμα, | ||
+ | < | ||
+ | g++ -Wall -g Rectangle.cpp -c | ||
+ | g++ -Wall -g Rectangle.o RectangleUsage.cpp | ||
</ | </ | ||
<WRAP center round info 80%> | <WRAP center round info 80%> | ||
Σε αναλογία με τις μεθόδους ο κατασκευαστής μπορεί να οριστεί εντός της κλάσης, | Σε αναλογία με τις μεθόδους ο κατασκευαστής μπορεί να οριστεί εντός της κλάσης, | ||
- | < | + | < |
class Rectangle { | class Rectangle { | ||
private: | private: | ||
Line 62: | Line 71: | ||
===== Υπερφόρτωση κατασκευαστών ===== | ===== Υπερφόρτωση κατασκευαστών ===== | ||
- | Σε αναλογία με την [[cpp: | + | Σε αναλογία με την [[cpp: |
<code cpp Rectangle.hpp> | <code cpp Rectangle.hpp> | ||
Line 82: | Line 91: | ||
int getHeight() const; | int getHeight() const; | ||
}; | }; | ||
+ | </ | ||
+ | |||
+ | <code cpp Rectangle.cpp> | ||
+ | #include " | ||
Rectangle:: | Rectangle:: | ||
Line 122: | Line 135: | ||
</ | </ | ||
- | Αντί για την παραπάνω δήλωση θα μπορούσατε να γράψετε ισοδύναμα: | + | Αντί για την παραπάνω δήλωση θα μπορούσατε να γράψετε |
<code cpp> | <code cpp> | ||
Rectangle:: | Rectangle:: | ||
Line 128: | Line 141: | ||
} | } | ||
</ | </ | ||
- | ή | + | ή __ισοδύναμα__ |
<code cpp> | <code cpp> | ||
Rectangle:: | Rectangle:: | ||
</ | </ | ||
- | Τελικά η κλάση Rectangle μπορεί να γραφεί | + | Ο παραπάνω τρόπος γραφής ονομάζεται στη βιβλιογραφία __member initilization list__. |
<code cpp Rectangle.hpp> | <code cpp Rectangle.hpp> |
cpp/constructors.txt · Last modified: 2021/05/07 06:11 (external edit)