[go] 함수를 변수로 사용하기
Go언어에서는 함수를 변수로 사용할 수 있습니다. 이는 함수를 다른 함수에 전달하거나, 함수 내부에서 동적으로 호출할 수 있는 유연한 방법을 제공합니다.
함수 타입 정의하기
먼저, 함수의 타입을 정의해야 합니다. 이를 통해 변수에 함수를 할당할 수 있습니다. 아래는 add
함수를 func(int, int) int
타입으로 정의한 예시입니다.
type operation func(int, int) int
func add(a, b int) int {
return a + b
}
위의 코드는 operation
이라는 함수 타입을 정의하고, add
함수를 해당 타입으로 정의한 것입니다.
함수 변수 선언 및 할당
다음으로, 함수 타입을 갖는 변수를 선언하고 함수를 할당할 수 있습니다.
var myFunc operation
myFunc = add
위의 코드에서 myFunc
는 operation
타입의 변수로, add
함수를 할당하고 있습니다.
변수로 함수 호출하기
변수에 할당된 함수는 일반 함수와 동일하게 호출할 수 있습니다.
result := myFunc(3, 4) // 결과는 7
위의 코드에서 myFunc
변수에 할당된 add
함수를 호출하여 결과를 얻을 수 있습니다.
이와 같이 Go언어를 사용하여 함수를 변수로 다루고 활용할 수 있습니다. 함수를 변수로 다루면 코드의 유연성을 높이고, 동적으로 함수를 선택하거나 변환하는 등의 다양한 기능을 구현할 수 있습니다.
더 많은 정보는 Go 언어 공식 문서를 참고하세요.