Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk Meluluskan Berbilang Nilai Pulangan kepada Fungsi Variadik dalam Go?

Bagaimana untuk Meluluskan Berbilang Nilai Pulangan kepada Fungsi Variadik dalam Go?

Mary-Kate Olsen
Lepaskan: 2024-12-27 19:53:10
asal
722 orang telah melayarinya

How to Pass Multiple Return Values to a Variadic Function in Go?

Meluluskan Berbilang Nilai Pulangan kepada Fungsi Variadik

Masalah:

Anda Boleh fungsi yang mengembalikan dua integer dan ingin mencetak kedua-dua nilai menggunakan pemformatan rentetan dalam a fmt.Println() panggilan. Walau bagaimanapun, pendekatan ini tidak disokong secara lalai dalam Go.

Penyelesaian:

Walaupun anda tidak boleh terus menghantar berbilang nilai pulangan kepada fmt.Println(), anda boleh menggunakan helah untuk mencapai hasil yang sama dengan fmt.Printf():

  1. Buat fungsi utiliti, wrap(), yang mengambil nombor pembolehubah input dan mengembalikan sekeping []antara muka{}.
  2. Panggil wrap() dengan nilai pulangan fungsi anda, menghantarnya sebagai parameter individu.
  3. Lepaskan kepingan yang terhasil kepada fmt.Printf() sebagai nilai untuk parameter variadic ....

Berikut ialah contoh:

func wrap(vs ...interface{}) []interface{} {
    return vs
}

func twoInts() (int, int) {
    return 1, 2
}

func main() {
    fmt.Printf("first= %d and second = %d", wrap(twoInts()...)...)
}
Salin selepas log masuk

Pendekatan ini membolehkan anda menghantar berbilang nilai pulangan kepada fungsi variadik, membolehkan anda mencetaknya menggunakan pemformatan rentetan dalam fmt.Printf().

Nota :

  • fmt.Println() masih boleh digunakan dengan fungsi yang mengembalikan sekurang-kurangnya satu nilai, kerana ia secara automatik memberikan nilai pulangan berlebihan kepada parameter variadicnya.
  • Fungsi utiliti wrap() boleh digeneralisasikan untuk mengendalikan fungsi dengan sebarang bilangan nilai pulangan.
  • Untuk cerapan tambahan , rujuk soalan berkaitan tentang berbilang nilai dalam konteks nilai tunggal dan mengembalikan nilai 'ok' seperti peta dalam fungsi Go.

Atas ialah kandungan terperinci Bagaimana untuk Meluluskan Berbilang Nilai Pulangan kepada Fungsi Variadik dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan