cpp:object_creation
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:object_creation [2020/04/08 14:30] – ρε gthanos | cpp:object_creation [2021/05/07 07:20] – [Δημιουργία αντικειμένων] gthanos | ||
---|---|---|---|
Line 19: | Line 19: | ||
void setHeight(int h); | void setHeight(int h); | ||
}; | }; | ||
+ | </ | ||
- | Rectangle:: | + | <code cpp Rectangle.cpp> |
- | Rectangle:: | + | #include " |
- | Rectangle:: | + | |
+ | Rectangle:: | ||
+ | std::cout << " | ||
+ | } | ||
+ | Rectangle:: | ||
+ | std::cout << " | ||
+ | } | ||
+ | Rectangle:: | ||
+ | std::cout << " | ||
+ | } | ||
Rectangle:: | Rectangle:: | ||
Line 32: | Line 42: | ||
void Rectangle:: | void Rectangle:: | ||
void Rectangle:: | void Rectangle:: | ||
- | |||
</ | </ | ||
<code cpp RectangleUsage.cpp> | <code cpp RectangleUsage.cpp> | ||
+ | #include " | ||
+ | |||
int main() { | int main() { | ||
Rectangle rect1(3,4); | Rectangle rect1(3,4); | ||
Line 43: | Line 54: | ||
</ | </ | ||
- | Ο παραπάνω κώδικας δημιουργεί 3 αντικείμενα της κλάσης // | + | Ο παραπάνω κώδικας δημιουργεί |
<WRAP center round tip 80%> | <WRAP center round tip 80%> | ||
Line 50: | Line 61: | ||
Rectangle rect3(); | Rectangle rect3(); | ||
</ | </ | ||
- | Η χρήση παρενθέσεων δεν είναι απαραίτητη, | + | Η χρήση παρενθέσεων δεν είναι απαραίτητη, |
</ | </ | ||
Line 107: | Line 118: | ||
Τα παραδείγματα που είδαμε μέχρι τώρα δημιουργούν αντικείμενα μέσα στο //stack// της διεργασίας. Εάν θέλουμε να δημιουργήσουμε αντικείμενα τα οποία είναι αποθηκευμένα στο //heap//, δηλαδή δεσμεύεται δυναμικά μνήμη για αυτά, θα πρέπει να το κάνουμε μέσω του τελεστή [[cpp: | Τα παραδείγματα που είδαμε μέχρι τώρα δημιουργούν αντικείμενα μέσα στο //stack// της διεργασίας. Εάν θέλουμε να δημιουργήσουμε αντικείμενα τα οποία είναι αποθηκευμένα στο //heap//, δηλαδή δεσμεύεται δυναμικά μνήμη για αυτά, θα πρέπει να το κάνουμε μέσω του τελεστή [[cpp: | ||
- | <code cpp RectangleInitialization.cpp> | + | <code cpp RectangleInHeap.cpp> |
+ | #include " | ||
int main () { | int main () { | ||
Rectangle *rect; | Rectangle *rect; | ||
Line 122: | Line 135: | ||
</ | </ | ||
- | Όταν ολοκληρωθεί ο κύκλος ζωής του αντικειμένου θα πρέπει να διαγραφεί το αντικείμενο μέσω του τελεστή //delete//. Η χρήση του τελεστή //delete// καλεί πριν την καταστροφή του αντικειμένου τον καταστροφέα της κλάσης. | + | Όταν ολοκληρωθεί ο κύκλος ζωής του αντικειμένου θα πρέπει να διαγραφεί το αντικείμενο μέσω του τελεστή //delete//. Η χρήση του τελεστή //delete// καλεί πριν την καταστροφή του αντικειμένου τον καταστροφέα της κλάσης. Κατεβάστε και μεταγλωττίστε τον παραπάνω κώδικα για να δείτε τα μηνύματα που εκτυπώνονται. |
cpp/object_creation.txt · Last modified: 2021/05/07 06:22 (external edit)