[Go] Function

노아카프카·2021년 11월 15일
0

Golang

목록 보기
2/5

각 언어의 함수를 공부할 때는, parameter와 return을 먼저 생각하게 된다.
해당 함수로 들어오는 입구와 출구 역할을 하기 때문이다.

코드부터 보자.

  • param O / return X
func foo(name string){
	fmt.Println(name)
}

foo("noa")
출력값 : noa


  • param O / return O
func foo(name string) int
{
    fmt.Println(name)
    return len(name)
}

foo("noa")
출력값 : noa
반환값 : 3


  • params(same type)
func foo(names ...string) int{
    for name := range(names){
    	fmt.Println(name)
    }
    return len(names)
}

foo("noa", "kafka")
출력값 : noa / kafka
반환값 : 2


  • named return value
    : 반환값인 cnt 의 경우, var cnt int 을 포함하고 있기 때문에 함수 내부에서 바로 대입연산이 가능하다.
func foo(names ...string) (cnt int){
    for name := range(names){
    	fmt.Println(name)
    }
    cnt = len(names)
}

foo("noa", "kafka")
출력값 : noa / kafka
반환값 : 2


0개의 댓글