_(sublinhado) em Golang é chamado de Identificador em Branco . Identificador é um nome definido pelo usuário para componentes de programa usados para fins de identificação.

Golang tem um recurso especial de definir e usar variáveis não utilizadas usando um Identificador em Branco. Variáveis não utilizadas são aquelas que são definidas pelo usuário durante o programa, mas ele nunca as utiliza. Essas variáveis tornam o programa quase ilegível. Como você sabe, Golang é uma linguagem de programação mais concisa e legível, por isso não permite que os programadores definam uma variável não utilizada. Se você fizer isso, o compilador lhe dará um erro.
O uso real do Identificador em Branco ocorre quando uma função retorna vários valores, mas precisamos apenas de alguns valores e precisamos remover os valores redundantes. Basicamente, ele informa ao compilador que essa variável não é necessária e a ignora sem nenhum erro. Ela esconde os valores das variáveis, tornando o programa legível. Portanto, sempre que você atribuir um valor ao Identificador em Branco, ele não terá utilidade.
Exemplo 1: No programa abaixo, a função mul_div retorna dois valores e armazenamos ambos os valores nos identificadores mul e div . Mas em todo o programa, usamos apenas uma variável, ou seja, mul . Então o compilador dará erro de que div foi declarado e não utilizado.
// 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
}
Resultado:
./prog.go:15:7: div được khai báo nhưng không được dùng
Exemplo 2: Use o identificador em branco para modificar o programa acima. Em vez de identificar div, use apenas _ (sublinhado) . Ele permite que o compilador ignore erros declarados e não utilizados para aquela variável específica.
// 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
}
Resultado:
105 x 7 = 735
Pontos importantes a serem lembrados:
- Você pode usar vários identificadores em branco no mesmo programa. Então você pode dizer que um programa Golang pode ter múltiplas variáveis usando o mesmo nome de identificador em branco.
- Existem muitos casos em que é necessário atribuir valores apenas para completar a sintaxe, mesmo quando se sabe que os valores não serão usados em nenhum lugar do programa. Como uma função que retorna vários valores. A maioria desses casos usa o identificador em branco.
- Você pode usar qualquer valor de qualquer tipo com Identificador em Branco.