Funcție care returnează mai multe valori în Golang

În limba Golang , vi se permite să returnați mai multe valori dintr-o funcție, folosind instrucțiunea return. Cu alte cuvinte, într-o funcție, o instrucțiune return poate returna mai multe valori. Tipurile de valori returnate sunt aceleași cu tipurile de parametri specificati în lista de parametri.

Funcție care returnează mai multe valori în Golang

Sintaxă:

func function_name(parameter_list)(return_type_list){
     // code...
}

Acolo:

  • function_name : Acesta este numele functiei.
  • lista-parametri : Conține numele și tipurile parametrilor funcției.
  • return_type_list : Opțional și conține tipurile de valori pe care funcția le returnează. Dacă utilizați return_type în funcția dvs., atunci trebuie să utilizați declarația return în funcția dvs.

De exemplu:

// Chương trình Go minh họa
// cách hàm trả về nhiều giá trị
package main 

import "fmt"

// myfunc trả về 3 giá trị của kiểu int
func myfunc(p, q int)(int, int, int ){ 
	return p - q, p * q, p + q 
} 

// Phương thức chính
func main() { 
	
	// Giá trị trả về được gắn vào
	// 3 biến khác nhau
var myvar1, myvar2, myvar3 = myfunc(4, 2) 
	
// Hiện giá trị
fmt.Printf("Result is: %d", myvar1 ) 
fmt.Printf("\nResult is: %d", myvar2) 
fmt.Printf("\nResult is: %d", myvar3) 
} 

Rezultat:

Result is: 2
Result is: 8
Result is: 6

Denumiți valoarea returnată

În limba Go, vi se permite să furnizați nume pentru valorile returnate. Și puteți folosi acele nume de variabile și în codul dvs. Nu este nevoie să scrieți aceste nume cu o instrucțiune return , deoarece compilatorul Go va înțelege automat că aceste variabile trebuie reținute. Iar tipul de returnare se numește randament minim. Returul minim reduce dublarea în program.

Sintaxă:

func function_name(para1, para2 int)(name1 int, name2 int){
    // code...
}

hoặc

func function_name(para1, para2 int)(name1, name2 int){
   // code...
}

Aici, nume1 și nume2 sunt numele valorii returnate, iar para1 și para2 sunt parametrii funcției.

De exemplu:

// Minh họa chương trình Go
// cách đặt tên cho giá trị trả về
package main 

import "fmt"

// myfunc trả về 2 giá trị của kiểu int 
// đây là tên giá trị trả về:
// rectangle và square
func myfunc(p, q int)( rectangle int, square int ){ 
	rectangle = p*q 
	square = p*p 
	return
} 

func main() { 
	
	// Giá trị trả về được gán cho 
	// hai biến khác nhau
var area1, area2 = myfunc(2, 4) 
	
// Hiện giá trị
fmt.Printf("Area of the rectangle is: %d", area1 ) 
fmt.Printf("\nArea of the square is: %d", area2) 
	
} 

Rezultat:

Area of the rectangle is: 8
Area of the square is: 4

Lasă un comentariu

Ar fi Europa atrasă într-un ipotetic război nuclear SUA-Israel-Iran? Regulile NATO explicate

Ar fi Europa atrasă într-un ipotetic război nuclear SUA-Israel-Iran? Regulile NATO explicate

Un ghid pentru articolele 4 și 5 ale NATO, regulile ONU de autoapărare și de ce consultarea nu înseamnă intrarea automată a Europei în război.

Ar putea Iranul să aibă deja arme nucleare? Cum să interpretăm dovezile

Ar putea Iranul să aibă deja arme nucleare? Cum să interpretăm dovezile

Evaluați afirmațiile despre Iran în șase etape, distingând îmbogățirea uraniului, dezvoltarea de arme și posesia verificată.

Autoritatea Nucleară a SUA și Israelului: Ce explică de fapt sursele publice

Autoritatea Nucleară a SUA și Israelului: Ce explică de fapt sursele publice

Înțelegerea autorității decizionale în domeniul nuclear în șase etape, inclusiv controlul civil al SUA și limitele informațiilor publice despre Israel.

Strâmtoarea Hormuz în 2026: Ce spun sursele oficiale despre perturbările transportului maritim

Strâmtoarea Hormuz în 2026: Ce spun sursele oficiale despre perturbările transportului maritim

Un ghid al dovezilor oficiale din 2026 privind perturbările transporturilor maritime din Hormuz, afirmațiile legate de Iran, incidentele confirmate și ce rămâne incert.

Un ipotetic atac nuclear americano-israelian asupra Iranului ar provoca un al Treilea Război Mondial?

Un ipotetic atac nuclear americano-israelian asupra Iranului ar provoca un al Treilea Război Mondial?

Un ghid bazat pe surse privind riscurile de escaladare nucleară, regulile Cartei ONU și articolul 5 din NATO într-un scenariu strict ipotetic cu Iranul.

Cum să te pregătești pentru o ipotetică pană de curent legată de EMP: 5 pași pentru civili

Cum să te pregătești pentru o ipotetică pană de curent legată de EMP: 5 pași pentru civili

Urmați cinci pași pentru a vă pregăti pentru o întrerupere a energiei; scenariile nucleare și cele EMP sunt ipotetice, iar instrucțiunile oficiale privind adăpostul sunt prioritare.

Cum să evaluezi perturbările cibernetice fără a presupune că a fost vorba de Al Treilea Război Mondial: Un ghid în 5 pași

Cum să evaluezi perturbările cibernetice fără a presupune că a fost vorba de Al Treilea Război Mondial: Un ghid în 5 pași

Folosește 5 pași defensivi pentru a verifica o întrerupere cibernetică, a proteja conturile gospodăriei și a evita confundarea unei întreruperi cu un război.

Iarnă nucleară: Cum să evaluăm efectele climatice globale ale unui ipotetic atac al Iranului

Folosește acești 5 pași pentru a evalua efectele climatice ale unui ipotetic atac iranian, compară ipotezele modelului și evită predicțiile nefondate.

Cât timp ar putea dura până și-ar reveni Pământul după un ipotetic război nuclear?

Cât timp ar putea dura până și-ar reveni Pământul după un ipotetic război nuclear?

Explorează șase pași pentru citirea cercetărilor despre climă, alimente și refacerea ecosistemelor după un conflict nuclear ipotetic.

Listă de verificare pentru pregătirea pentru căderi nucleare: provizii esențiale și pași pentru adăpost

Listă de verificare pentru pregătirea pentru căderi nucleare: provizii esențiale și pași pentru adăpost

Construiți un kit practic de pregătire pentru căderi radioactive în șase pași, cu alimente și apă sigilate, un radio, provizii medicale și îndrumări pentru adăposturi.