Junior — Middle
Πώς διαχειρίζεται το std::unique_ptr την αυτόματη απελευθέρωση της δεσμευμένης μνήμης;
sobes.tech AI
Απάντηση από AI
std::unique_ptr — είναι ένας έξυπνος δείκτης στη C++ που κατέχει το αντικείμενο και απελευθερώνει αυτόματα τη μνήμη κατά την έξοδο από το πεδίο ορατότητας. Υλοποιεί τη σημασιολογία της αποκλειστικής ιδιοκτησίας: όταν το unique_ptr καταστρέφεται, καλείται ο καταστροφέας του διαχειριζόμενου αντικειμένου και απελευθερώνεται η μνήμη. Αυτό αποτρέπει διαρροές μνήμης χωρίς να χρειάζεται να καλέσετε χειροκίνητα delete.
Παράδειγμα χρήσης:
#include <memory>
void παράδειγμα() {
std::unique_ptr<int> ptr = std::make_unique<int>(42);
// το ptr θα απελευθερώσει αυτόματα τη μνήμη κατά την έξοδο από τη λειτουργία
}