Go 함수에 함수를 전달하면 모듈화와 재사용이 가능해집니다. 기본 구문은 함수를 매개변수로 받는 함수를 정의하여 이루어집니다. 고급 용도에는 클로저, 고차 함수 및 데이터 필터링이 포함됩니다.
Go 언어에서 함수를 매개변수로 전달하기 위한 팁
Go 언어에서 함수를 매개변수로 전달하는 것은 강력하고 유연한 기능입니다. 이를 통해 코드에서 모듈식이며 재사용 가능한 구성 요소를 만들 수 있습니다.
기본 구문
함수를 매개변수로 전달하는 기본 구문은 다음과 같습니다.
func main() { f := func(a, b int) int { return a + b } sum := process(f, 10, 20) fmt.Println(sum) // 输出:30 } func process(f func(int, int) int, a, b int) int { return f(a, b) }
고급 사용법
함수를 매개변수로 전달하는 고급 사용법은 다음과 같습니다.
실용 사례: 데이터 필터링
전달 함수를 매개변수로 사용하는 일반적인 실제 사례는 데이터 필터링입니다. 다음 코드 조각은 각 요소를 유지할지 여부를 결정하기 위해 함수를 인수로 전달하여 문자열 조각을 필터링하는 함수를 보여줍니다.
func main() { data := []string{"a", "b", "c", "d", "e"} filtered := filter(data, func(s string) bool { return strings.Contains(s, "a") }) fmt.Println(filtered) // 输出:["a"] } func filter(data []string, f func(string) bool) []string { result := []string{} for _, s := range data { if f(s) { result = append(result, s) } } return result }
Conclusion
함수를 인수로 전달하는 것은 유연하고 Go의 모듈식 모듈 코드 최적화를 위한 강력한 메커니즘입니다. 구문과 고급 사용법을 이해하면 잠재력을 최대한 발휘할 수 있습니다.
위 내용은 Golang에서 함수를 매개변수로 전달하기 위한 팁의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!