我是编程新手。我在Go中有两个示例代码,以及有关使用范围的about循环。这是第一个示例:
Program A
type Test struct {
Text string
}
func main() {
tests := []Test{
Test{"Test1"},
Test{"Test2"},
}
var a Test
for _, test := range tests {
a = test
fmt.Println(a)
}
}
这是第二个示例:
Program B
type Test struct {
Text string
}
func main() {
tests := []Test{
Test{"Test1"},
Test{"Test2"},
}
for _, test := range tests {
a := test
fmt.Println(a)
}
}
在第一个示例中,在循环外部声明了“ a”,但在第二个示例中,在循环内部声明了“ a”。与其他编程语言一样,两个示例程序之间有什么区别?有没有优化差异?谢谢。