variables Scoping and shoting in Go son poderosas técnicas que proporcionan control sobre la visibilidad variable e integridad de datos. Aquí hay varios escenarios en los que estas técnicas encuentran aplicaciones útiles:
package main import "fmt" func main() { i := 10 // scope: main j := 4 // Shadowing i within this block for i := 'a'; iusando {} pars
package main import "fmt" func main() { i := 1 j := 2 // Create new scope with { } block { // Shadow i with a new local variable i := "hi" // Increment j j fmt.Println(i, j) // hi 3 } // Original i comes into scope fmt.Println(i, j) // 1 3 }usando las llamadas de la función
package main import "fmt" func fun(i int, j *int) { i // Implicitly shadowing (used as local) *j // Explicitly shadowing (used as global) fmt.Println(i, *j) // 11 21 } func main() { i := 10 // scope: main j := 20 fun(i, &j) fmt.Println(i, j) // 10 21 }sombreando variables globales
package main import "fmt" var i int = 1 // Global variable func main() { j := 2 fmt.Println(i, j) // 1 2 // Shadowing global i i := 10 fmt.Println(i, j) // 10 2 fun(i, j) // 10 2 } func fun(i, j int) { fmt.Println(i, j) // 10 2 }ventajas de alcance y sombreado
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3