안녕하세요. 개발자 모도리입니다.
The Go Programming Language 라는 책으로 Go를 공부하고 있으며, 해당 책의 내용을 요약 정리해서 올리려고 합니다. 저는 번역본을 구매해서 공부하고 있습니다.
예제코드 라고 나오는 것들은 https://github.com/modolee/tgpl.git 에서 다운 받으실 수 있습니다.
= 기호의 왼쪽에 변수가 있고 오른쪽에 표현식이 있는 것입니다.x = 1 // 명명된 변수
*p = true // 간접 변수
person.name = "bob" // 구조체 필드
count[x] = count[x] * scale // 배열이나 슬라이스 또는 맵 원소
x, y = y, x
a[i], a[j] = a[j], a[i]
func gcd(x, y int) int {
for y != 0 {
x, y = y, x%y
}
return x
}
func fib(n int) int {
x, y := 0, 1
for i := 0; i < n; i++ {
x, y = y, x+y
}
return x
}
f, err = os.Open("foo.txt") // 함수 호출이 두 값을 반환합니다.
v, ok = m[key] // 맵 조회
v, ok = x.(T) // 타입 지정
v, ok = <-ch // 채널 수신
// 불필요한 값은 빈 식별자에 할당할 수 있습니다.
_, err = io.Copy(dst, src) // 바이트 카운트 버림
_, ok = x.(T) // 타입만 확인하고 결과 버림
medals := []strings{"gold", "silver", "bronze"}
// 위의 문장과 동일합니다.
var medals [3]string
medals[0] = "gold"
medals[1] = "silver"
medals[2] = "bronze"