This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
|
cpp:object_lifecycle [2020/04/14 14:30] gthanos [Ένα πιο σύνθετο παράδειγμα αρχικοποίησης δεικτών] |
cpp:object_lifecycle [2021/05/07 07:29] gthanos [2η Περίπτωση - Δημιουργία αντικειμένων στο Heap] |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Κύκλος ζωής των αντικειμένων - Δημιουργία | + | ====== Κύκλος ζωής των αντικειμένων - Δημιουργία αντικειμένων |
| - | Παρακάτω δίνεται ο κώδικας της κλάσης // | + | Παρακάτω δίνεται ο κώδικας της κλάσης // |
| <code cpp Rectangle.hpp> | <code cpp Rectangle.hpp> | ||
| Line 134: | Line 134: | ||
| } | } | ||
| </ | </ | ||
| - | |||
| - | Όταν δεν χρειαζόμαστε πλέον το αντικείμενο που δεσμεύτηκε δυναμικά στο //heap// θα πρέπει να το καταστρέψουμε ελευθερώνοντας τη δεσμευμένη μνήμη με τη βοήθεια του τελεστή //delete//. Κατά την | ||
| Ακολουθεί το σχηματικό διάγραμμα του //stack// και του //heap// της διεργασίας πριν, κατά τη διάρκεια και μετά την εκτέλεσης της συνάρτησης //foo//. Στο διάγραμμα δεν αποτυπώνεται η δέσμευση μνήμης για τα πεδία //width// και //height// του κάθε αντικειμένου τύπου // | Ακολουθεί το σχηματικό διάγραμμα του //stack// και του //heap// της διεργασίας πριν, κατά τη διάρκεια και μετά την εκτέλεσης της συνάρτησης //foo//. Στο διάγραμμα δεν αποτυπώνεται η δέσμευση μνήμης για τα πεδία //width// και //height// του κάθε αντικειμένου τύπου // | ||
| {{ : | {{ : | ||
| + | |||
| + | Όταν δεν χρειαζόμαστε πλέον το αντικείμενο που δεσμεύτηκε δυναμικά στο //heap// θα πρέπει να το καταστρέψουμε ελευθερώνοντας τη δεσμευμένη μνήμη με τη βοήθεια του τελεστή //delete//. Κατά την | ||
| ===== Ένα πιο σύνθετο παράδειγμα αρχικοποίησης δεικτών ===== | ===== Ένα πιο σύνθετο παράδειγμα αρχικοποίησης δεικτών ===== | ||