Function returning multiple values ​​in Golang

In Golang language , you are allowed to return multiple values ​​from a function, using the return statement. In other words, in a function, a return statement can return multiple values. The type of the returned values ​​is similar to the type of the parameter specified in the parameter list.

Function returning multiple values ​​in Golang

Syntax:

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

In there:

  • function_name : This is the name of the function.
  • parameter-list : Contains the names and types of the function parameters.
  • return_type_list : Optional and contains the types of values ​​that the function returns. If you are using return_type in your function, then you need to use the return statement in your function.

For example:

// 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) 
} 

Result:

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

Name the return value

In Go language, you are allowed to provide names for return values. And you can also use those variable names in your code. There is no need to write these names with return statement because Go compiler will automatically understand that these variables should be retained. And the return type is called minimal return. Minimal return reduces duplication in your program.

Syntax:

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

hoặc

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

Here, name1 and name2 are the names of the return value and para1 and para2 are the parameters of the function.

For example:

// 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) 
	
} 

Result:

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

Leave a Comment

What Young Riders Should Know About Moving Their Motorcycles Across Cities

What Young Riders Should Know About Moving Their Motorcycles Across Cities

Long-distance travel can involve heavy traffic, changing weather conditions, and rider fatigue. If you are also dealing with the responsibilities of moving home, such as packing belongings or coordinating accommodation, a long ride may add unnecessary pressure to an already busy schedule.

Solving Microsoft Teams Shortcut Error Not Opening

Solving Microsoft Teams Shortcut Error Not Opening

Tired of Microsoft Teams shortcut error preventing you from opening the app? Follow our expert, step-by-step guide with the latest fixes for instant resolution. Works on Windows, Mac & web – no tech skills needed!

Solving Microsoft Teams Task Management Sync Error

Solving Microsoft Teams Task Management Sync Error

Tired of Microsoft Teams Task Management Sync Error halting your workflow? Follow our proven, step-by-step fixes to resolve sync issues fast and restore seamless task collaboration. No tech expertise needed!

Troubleshooting Microsoft Teams Wiki Error Formatting

Troubleshooting Microsoft Teams Wiki Error Formatting

Struggling with Microsoft Teams Wiki Error Formatting? This step-by-step guide reveals proven fixes for common wiki tab issues, ensuring smooth editing and collaboration in Teams. Get back to productive wikis fast!

How to Fix Microsoft Teams Installation Error for Linux

How to Fix Microsoft Teams Installation Error for Linux

Struggling with Microsoft Teams installation error on Linux? Discover step-by-step fixes for Ubuntu, Fedora & more. Resolve dependency issues, crashes, and errors quickly with our ultimate guide. Get Teams running smoothly today!

Solving Microsoft Teams Error Page Not Loading

Solving Microsoft Teams Error Page Not Loading

Struggling with Microsoft Teams "Error Page" not loading? Get step-by-step fixes for desktop, web, and mobile. Solve Microsoft Teams Error Page issues quickly and resume seamless teamwork today.

Solving Microsoft Teams Error Screenshot Issues

Solving Microsoft Teams Error Screenshot Issues

Tired of Microsoft Teams "Error Screenshot" blocking your workflow? Get proven, step-by-step solutions to resolve screenshot errors in Teams instantly and boost productivity. No tech skills needed!

How to Fix Microsoft Teams Error U User

How to Fix Microsoft Teams Error U User

Tired of Microsoft Teams "Error U" User blocking your chats? Get proven, step-by-step fixes to clear cache, reset, and restore seamless collaboration instantly.

Where are Microsoft Teams Registry Keys Located on Windows 11?

Where are Microsoft Teams Registry Keys Located on Windows 11?

Unlock the precise locations of Microsoft Teams registry keys on Windows 11. Step-by-step guide to find, access, and safely tweak them for optimal performance and troubleshooting. Essential for IT pros and Teams enthusiasts.

How to Fix Microsoft Teams Training Error Video Lag

How to Fix Microsoft Teams Training Error Video Lag

Tired of Microsoft Teams "Training Error" Video Lag ruining your meetings? Follow our step-by-step guide with the latest fixes for smooth video calls—no more frustration!