_(trattino basso) in Golang è chiamato identificatore vuoto . L'identificatore è un nome definito dall'utente dei componenti del programma, utilizzato a fini di identificazione.

Golang ha la caratteristica speciale di definire e utilizzare variabili inutilizzate utilizzando Blank Identifier. Le variabili non utilizzate sono quelle variabili definite dall'utente durante il programma, ma che non vengono mai utilizzate. Queste variabili rendono il programma quasi illeggibile. Come sapete, Golang è un linguaggio di programmazione più conciso e leggibile, quindi non consente ai programmatori di definire una variabile inutilizzata. Se lo fai, il compilatore ti darà un errore.
Il vero utilizzo di Blank Identifier si verifica quando una funzione restituisce più valori, ma abbiamo bisogno solo di pochi valori e dobbiamo rimuovere i valori ridondanti. In pratica, comunica al compilatore che questa variabile non è necessaria e la ignora senza generare errori. Nasconde i valori delle variabili, rendendo il programma leggibile. Quindi ogni volta che si assegna un valore a Blank Identifier, questo non sarà di alcuna utilità.
Esempio 1: Nel programma seguente, la funzione mul_div restituisce due valori e memorizziamo entrambi i valori negli identificatori mul e div . Ma nell'intero programma utilizziamo solo una variabile, ovvero mul . Quindi il compilatore genererà un errore che dice che div è dichiarato ma non utilizzato.
// Chương trình Go hiện trình biên dịch
// báo lỗi nếu một biến
// được khai báo nhưng không được sử dụng
package main
import "fmt"
// Hàm chính
func main() {
// gọi hàm này
// hàm trả về hai giá trị được gán
// cho định danh mul và div
mul, div := mul_div(105, 7)
// chỉ dùng biến mul
// trình biên dịch sẽ báo lỗi
fmt.Println("105 x 7 = ", mul)
}
// hàm trả về hai
// giá trị của kiểu integer
func mul_div(n1 int, n2 int) (int, int) {
// trả về các giá trị này
return n1 * n2, n1 / n2
}
Risultato:
./prog.go:15:7: div được khai báo nhưng không được dùng
Esempio 2: utilizzare l'identificatore Blank per modificare il programma sopra. Invece di identificare div, usa semplicemente _ (trattino basso) . Permette al compilatore di ignorare gli errori dichiarati e non utilizzati per quella particolare variabile.
// Chương trình Go dùng định danh trống
package main
import "fmt"
// Hàm chính
func main() {
// gọi hàm này
// hàm trả về hai giá trị
// được gán cho định danh mul và trống
mul, _ := mul_div(105, 7)
// chỉ dùng biến mul
fmt.Println("105 x 7 = ", mul)
}
// hàm trả về hai giá trị
// của kiểu integer
func mul_div(n1 int, n2 int) (int, int) {
// trả về giá trị này
return n1 * n2, n1 / n2
}
Risultato:
105 x 7 = 735
Punti importanti da ricordare:
- È possibile utilizzare più identificatori vuoti nello stesso programma. Quindi si può dire che un programma Golang può avere più variabili utilizzando lo stesso nome identificativo vuoto.
- Sono molti i casi in cui è necessario assegnare valori solo per completare la sintassi, anche quando è noto che tali valori non verranno utilizzati da nessuna parte nel programma. Come una funzione che restituisce più valori. Nella maggior parte dei casi viene utilizzato l'identificatore vuoto.
- È possibile utilizzare qualsiasi valore di qualsiasi tipo con Blank Identifier.