Junior — Middle
Πώς καθορίζεται η περιοχή ορατότητας των μεταβλητών και των συναρτήσεων στη γλώσσα Go;
sobes.tech AI
Απάντηση από AI
Στη Go, η περιοχή ορατότητας μεταβλητών και συναρτήσεων καθορίζεται από το σημείο δήλωσής τους και τον κανόνα εξαγωγής:
- Τοπική περιοχή: μεταβλητές που δηλώνονται μέσα σε μια συνάρτηση ή μπλοκ είναι ορατές μόνο μέσα σε αυτό το μπλοκ.
- Περιοχή πακέτου: μεταβλητές, συναρτήσεις, τύποι που δηλώνονται σε επίπεδο πακέτου (εκτός συναρτήσεων) είναι ορατές σε όλα τα αρχεία αυτού του πακέτου.
- Εξαγόμενα αναγνωριστικά: αν το όνομα μιας μεταβλητής, συνάρτησης ή τύπου αρχίζει με κεφαλαίο γράμμα, εξάγεται και είναι διαθέσιμο από άλλα πακέτα.
Παράδειγμα:
package example
var packageVar = 42 // διαθέσιμο σε όλο το πακέτο
var ExportedVar = 100 // επίσης διαθέσιμο από άλλα πακέτα
func exampleFunc() {
var localVar = "γεια" // ορατό μόνο μέσα στη exampleFunc
fmt.Println(localVar)
}
Έτσι, στη Go, η περιοχή ορατότητας σχετίζεται στενά με το επίπεδο δήλωσης και το αν το όνομα αρχίζει με κεφαλαίο γράμμα.