[Go] 함수(feat. more) - 3

Hyeseong·2021년 5월 13일
0

Go Tutorial

목록 보기
3/11

naked return

일단 보겠습니다.
저의 작명으로 헐 벗은 반환?이라고 할 것같은데~ ㅠ.ㅠㅋㅋ
어쨋든

<사진1>

함수의 머리 부분에서 리턴부에 미리 변수명과 타입을 설정해주는 거지요.
만약 로직처리 부분에서 위 사진처럼 하게 되면 오류가 발생한다는점!
즉, 비즈니스 구현부에는 naked return으로 미리 초기화된 반환 변수의 타입을 지정하는 일은 불가한 거조.

<사진2>

결국 사진2와 같이 멋드러지게 naked return을 구현할 수 있습니다.

정리 :
1) 미리 리턴 값의 타입을 지정한다.
2) 실제 비즈니스 로직 구현부의 리턴 키워드에는 return만 달랑 써주거나 혹은 써줘도 무방하다.

defer

defer로는 func이 끝나고 나서 추가적인 동작을 구현 할 수 있어요.

솔직히 defer 있고 없고의 차이를 몰랐는데. 위의 코드를 작성해서, 더 확실히 파악했어요. 가장 맨 앞에 defer expression을 작성했는데도 그 다음 Println()함수가 먼저 실행된게 보이조? 그겁니다.

profile
어제보다 오늘 그리고 오늘 보다 내일...

0개의 댓글