naked return
package main
import (
"fmt"
"strings"
)
func lenAndUpper(name string) (length int, upper string) {
length = len(name)
upper = strings.ToUpper(name)
return
}
func main() {
totalLength, upper := lenAndUpper("name")
fmt.Println(totalLength, upper)
}
return할 variable을 명시하지 않아도 함수 부분에 직접 넣어줄 수 있다
defer
- function이 끝났을 때 추가적으로 무엇인가 동작 하게 할 수 있다.
package main
import (
"fmt"
"strings"
)
func lenAndUpper(name string) (length int, upper string) {
defer fmt.Println("I'm done")
length = len(name)
upper = strings.ToUpper(name)
return
}
func main() {
totalLength, upper := lenAndUpper("name")
fmt.Println(totalLength, upper)
}
I'm done
4 NAME
func main 함수에 lenAndUpper 함수가 실행되고
I'm done 이 출력이 되고
fmt.Println(totalLength, upper) 이 실행이 되면서
4 NAME 이 출력이 된다
'언어 > Go' 카테고리의 다른 글
go test sample study (0) | 2022.07.21 |
---|---|
If with a Twist (0) | 2022.02.13 |
for, range, ...args (0) | 2022.02.13 |
Functions part One (0) | 2022.02.13 |
Variables and Constants (0) | 2022.02.13 |
댓글