Junior — Middle
Σε ποιο σημείο της μνήμης αποθηκεύεται το αντικείμενο που δημιουργήθηκε με τη λειτουργία Make;
sobes.tech AI
Απάντηση από AI
Η λειτουργία make στη Go χρησιμοποιείται για τη δημιουργία slices, χαρτών και καναλιών. Τα αντικείμενα που δημιουργούνται με το make τοποθετούνται πάντα στη διαχειριζόμενη στοίβα (heap), καθώς απαιτούν δυναμική κατανομή μνήμης για τη εσωτερική τους δομή (π.χ., ένας πίνακας για ένα slice ή ένας πίνακας κατακερματισμού για έναν χάρτη).
Παράδειγμα:
s := make([]int, 10) // slice με 10 στοιχεία
Εδώ, δημιουργείται ένα slice που περιέχει έναν δείκτη σε έναν πίνακα στη στοίβα, και το ίδιο το slice είναι μια δομή με έναν δείκτη, μήκος και χωρητικότητα. Συνεπώς, τα δεδομένα στα οποία αναφέρεται το slice αποθηκεύονται στη στοίβα.