Function
- 다른 언어와 마찬가지로 함수를 생성함
- 0개 이상의 인수를 가질수 있다.
- 단 golang 에서는 변수 타입을 변수 뒤에 작성해준다. (매서드 리턴타입도 뒤에 작성 void 일때는 작성 안해도됨.)
package main
import "fmt"
func add(x int, y int) int {
return x + y
}
func main() {
fmt.Println(add(42, 13))
}
- 고언어 타입을 뒤에 작성하는 이유에 대한 document
함수 인자 타입이 같을때
func add(x, y int) int{
return x + y
}
함수 반환 여러개
- golang 은 return 변수를 여러개 할 수 있다.
package main
import "fmt"
func swap(x, y string) (string, string) {
return y, x
}
func main() {
a, b := swap("hello", "world")
fmt.Println(a, b)
}
이름이 주어진(기명의) 반환 값
package main
import "fmt"
func split(sum int) (x, y int) {
x = sum * 4 / 9
y = sum - x
return
}
func main() {
fmt.Println(split(17))
}