Go에서는 함수 호출 시 명명된 매개변수를 지정할 수 없습니다. 대신 인수는 예상 순서대로 나열되어야 합니다. 그러나 필드 이름을 사용하여 초기화를 수행하는 방법에는 두 가지가 있습니다.
가장 직접적인 방법은 함수의 매개변수를 포함하는 구조체를 정의하고 구조체의 인스턴스를 기능:
type Params struct { Name string Address string Nick string Age int Value int } func MyFunction(p Params) { // Operations using p.Name, p.Address, etc. } func main() { MyFunction(Params{ Name: "Bob", Address: "New York", Nick: "Builder", Age: 30, Value: 1000, }) }
원본을 수정하는 경우 함수가 실행 가능하지 않은 경우 구조체를 허용하고 적절한 필드 값을 원래 함수에 전달하는 도우미 함수를 생성할 수 있습니다.
func MyFunction(name, address, nick string, age, value int) { // Operations using name, address, etc. } 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!