go generic (고 언어 제네릭)

2021. 12. 22. 17:35Programming/JAVA, C++, Go, Rust

    목차
반응형

generic in Go

Go 언어에서도 1.18 onwards version 부터 generic을 지원하게 되었습니다.

이제 매우 간단하게 go 언어의 generic을 활용하여 type variant한 코드를 작성할 수가 있게 되었습니다.

go 언어에서의 generic 사용에 대한 문법은 매우 간단합니다.

 

generic example

func Add[T any](param1 T, param2 T) {
    return param1 + param2
}

여기서 any 는 T가 어떠한 type이든지 될 수 있다는 것을 의미합니다.
이제 다름과 같은 호출이 가능합니다.

Add("a", "b")
Add(1, 2)

 

array parameter of a generic function

배열의 경우 다음과 같이 코드가 작성될 수 있습니다.

func Sum[T any](vals []T) {
    res := 0
    for _, val := range vals {
        res += val
    }

    return res
}
반응형

'Programming > JAVA, C++, Go, Rust' 카테고리의 다른 글

Flutter vs. React Native  (0) 2021.12.30
go 언어로 web server 만들기 1 (고 언어 웹 서버)  (0) 2021.12.30
Go empty interface  (0) 2021.12.09
Golang slice, map, struct  (0) 2021.11.09
Golang 기본 문법  (0) 2021.11.09