Go에서 함수 호출을 수행하려면 인수가 함수 매개변수와 동일한 순서로 나열되어야 합니다. 그러나 다음과 같이 이름으로 인수를 명시적으로 지정하는 것을 선호할 수도 있습니다.
MyFunction(name: "Bob", address: "New York", nick: "Builder", age: 30, value: 1000)
이름이 지정되지 않은 인수는 지원되지 않음
안타깝게도 Go는 명명된 인수를 지원하지 않습니다. 기능을 위해. Go 사양에서 언급했듯이 모든 비 가변 매개변수에 대해 예상되는 순서로 값을 지정해야 합니다.
옵션 1: 구조체 래퍼 사용
이름이 지정된 것을 모방하려면 인수를 사용하면 함수 매개변수를 래핑하는 구조체를 만들 수 있습니다.
type Params struct { name, address, nick string age, value int } func MyFunction(p Params) { // perform some operations using p.name, p.address, etc. } func main() { MyFunction(Params{ name: "Bob", address: "New York", nick: "Builder", age: 30, value: 1000, }) }
옵션 2: 도우미 함수 사용
원래 함수를 수정할 수 없는 경우 구조체 매개변수를 사용하고 적절한 필드를 인수로 사용하여 원래 함수를 호출하는 도우미 함수를 생성하세요.
func MyFunction2(p Params) { MyFunction(p.name, p.address, p.nick, p.age, p.value) } func main() { MyFunction2(Params{ name: "Bob", address: "New York", nick: "Builder", age: 30, value: 1000, }) }
위 내용은 Go에서 명명된 함수 인수를 어떻게 시뮬레이션할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!