«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как передавать несколько возвращаемых значений в качестве параметров функции в Go?

Как передавать несколько возвращаемых значений в качестве параметров функции в Go?

Опубликовано в 2025-04-13
Просматривать:270

How to Pass Multiple Return Values as Arguments to Functions in Go?

возвращает значения в качестве аргументов в функции многооружений

При работе с функциями, которые возвращают несколько значений, можно использовать эти значения в качестве аргументов ввода для других функций. Однако определенные ограничения применяются, когда функция приемной имеет дополнительные параметров. func dosomething (msg string, i int, s string) {...}

, если мы попытаемся передать возвращаемые значения returnIntAndString () doSomething () напрямую:

func returnIntAndString() (i int, s string) {...}

func doSomething(msg string, i int, s string) {...}

Ошибки:

doSomething("message", returnIntAndString())
это потому, что Go позволяет передавать только одно значение в качестве аргумента функции, даже если возвратное значение предыдущей функции дает несколько значений. Значения для временных переменных и передавать их индивидуально в dosomething (). dosomething ("message", i, s)

multiple-value returnIntAndString() in single-value context
not enough arguments in call to doSomething()

возвращает конкретные значения:

в функции returnIntAndString (), возвращайте именованную структуру с полными полями для каждого значения. Затем передайте struct to dosomething (). Я инт S строка } func returnIntAndString () result {...} res: = returnIntAndString () dosomething ("message", res.i, res.s)

  1. помните, конкретные правила GO не разрешают дополнительные параметры наряду с функцией возвращаемого значения с несколькими значениями при назначении аргументов. Если конкретные условия, изложенные в спецификации языка, не выполняются, вы должны использовать одно из предоставленных решений.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3