En Go, las variables declaradas dentro del alcance de una declaración if solo son visibles dentro de ese bloque. Esto puede presentar un desafío cuando es necesario usar variables declaradas en la declaración condicional fuera de ella.
Considere el siguiente código:
if len(array1) > len(array2) { new1 := make([]string, 0, len(array1)) } // Error: new1 is not visible here new2 := make([]string, 0, len(new1))
En este ejemplo, la variable new1 se declara dentro de la declaración if y solo se puede usar dentro de ese alcance. Para resolver este problema, new1 debe declararse fuera de la declaración if e inicializarse dentro de ella.
var new1 []string if len(array1) > len(array2) { new1 = make([]string, 0, len(array1)) } else { new1 = make([]string, 0, len(array2)) } new2 := make([]string, 0, len(new1))
Ahora, new1 se declara fuera de la declaración if y se puede acceder a él tanto en el bloque if como en el else. Esto permite que se use en el código posterior donde se pasa como argumento a realizar.
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