Go 함수(func)
Go 함수(func), 여러 반환값 받기, 가변 인수
함수(func)
func
는 함수를 정의한다. return
은 함수의 반환 값을 지정한다.
package main
import "fmt"
func add(x int, y int) int {
return x + y
}
func main() {
fmt.Println(add(5, 3)) // => 8
}
실행 결과:
8
여러 반환값
여러 값을 반환할 수도 있다. 여러 경우 유형 이름은(...)
로 묶어야 한다.
package main
import "fmt"
func addMinus(x int, y int) (int, int) {
return x + y, x - y
}
func main() {
add, min := addMinus(8, 5)
fmt.Println(add, min)
}
실행 결과:
13 3
여러 값을 반환하는 함수 등에서 불필요한 반환 값이 있으면 공백 변수 _
를 사용할 수 있다.
// funcA() 는 x 와 y 를 반환하지만, x 는 무시하고 y 만 받는다.
_, y := funcA()
가변 인수
...
를 사용하여 가변 인수를 실현할 수 있다.
package main
import "fmt"
func funcA(a int, b ...int) {
fmt.Printf("a=%d\n", a)
for i, num := range b {
fmt.Printf("b[%d]=%d\n", i, num)
}
}
func main() {
funcA(1, 2, 3, 4, 5)
}
실행 결과:
a=1
b[0]=2
b[1]=3
b[2]=4
b[3]=5
최종 수정 : 2023-03-26