저작권 안내
- 책 또는 웹사이트의 내용을 복제하여 다른 곳에 게시하는 것을 금지합니다.
- 책 또는 웹사이트의 내용을 발췌, 요약하여 강의 자료, 발표 자료, 블로그 포스팅 등으로 만드는 것을 금지합니다.
함수 사용하기
이재홍 http://www.pyrasis.com 2014.12.17 ~ 2015.02.07
익명 함수 사용하기
Go 언어는 JavaScript처럼 함수 안에서 이름이 없는 익명 함수를 정의한 뒤 바로 호출할 수 있습니다.
- func(매개변수명 자료형) 리턴값_자료형 { }()
package main
import "fmt"
func main() {
func() { // 함수에 이름이 없음
fmt.Println("Hello, world!")
}()
func(s string) { // 익명 함수를 정의한 뒤
fmt.Println(s)
}("Hello, world!") // 바로 호출
r := func(a int, b int) int { // 익명 함수를 정의한 뒤
return a + b
}(1, 2) // 바로 호출하여 리턴값을 변수 r에 저장
fmt.Println(r) // 3
}
실행 결과
3
익명 함수는 함수를 정의한 뒤 ( )
(괄호)를 사용하여 바로 함수를 호출합니다. 이때도 매개변수 및 리턴값을 사용할 수 있습니다. 이런 익명 함수는 코드양을 줄일 수 있으며 뒤에서 다룰 클로저, 지연 호출(defer
), 고루틴(go
)에서 주로 사용됩니다.
저작권 안내
이 웹사이트에 게시된 모든 글의 무단 복제 및 도용을 금지합니다.- 블로그, 게시판 등에 퍼가는 것을 금지합니다.
- 비공개 포스트에 퍼가는 것을 금지합니다.
- 글 내용, 그림을 발췌 및 요약하는 것을 금지합니다.
- 링크 및 SNS 공유는 허용합니다.