GO 언어에서 배열은 value 다.
배열을 배열변수에 할당하면 모든 요소를 복사한다.
함수에 배열을 넘겨주면, 배열의 복사본을 넘기는것이다. 포인터가 아니다.
배열의 크기정보를 type 이 가지고 있다. 따라서 [10]int 와 [20]int 는 다른 type 이다.
package main
import "fmt"
func main() {
array := [...] float64{ 1.0, 2.0, 3.0 }
x := Sum( array)
fmt.Println( x)
}
func Sum( a [3] float64) ( sum float64) {
for _, v := range a {
sum += v
}
return
}