Named return parameters in Golang

In Golang , named return parameters are commonly known as named parameters. Golang allows naming the return parameters or results of functions in the function signature or definition. Or you can say it is the explicit naming of return variables in the function definition. It basically removes the need to mention the variable name with the return statement. By using named return parameters or named parameters, one can simply use the return keyword at the end of the function to return the result to the caller. This concept is commonly used when a function has to return multiple values. So, for the convenience of the users and to increase the readability of the code, Golang provides this facility.

Named return parameters in Golang

Declare named return parameters

To declare a named result or return parameter, simply use the return type part of the function signature. Here is the general syntax for declaring a function in Golang. The syntax for declaring a function without a named return parameter is:

func function_name(Parameter-list)(Return_type){
    // function body.....
}

Here, Return_Type is optional and it contains the type of value that the function returns. If you are using Return_Type in your function, then you need to use the return statement in your function.
The syntax to declare a function with a named return argument is:

func function_name(Parameter-list)(result_parameter1 data-_type, result_parameter2 data_type, ….){ 
// function body…..
return 
} 

Here, (result_parameter1 data-_type, result_parameter2 data_type, ….) is the list of named return arguments along with their types. You can declare n number of named return parameters.

Named return parameters in Golang

Example: Example: In the program below, the line func calculator(a, b int) (mul int, div int) contains named return arguments. The return statement at the end of the function does not contain any parameters. The Go compiler will automatically return the parameters.

// Chương trình Go mình họa 
// cách dùng đối số trả về được đặt tên

package main

import "fmt"

// Phương thức chính
func main() {

	// tại đây gọi hàm này
	// hàm trả về hai giá trị
	m, d := calculator(105, 7)

	fmt.Println("105 x 7 = ", m)
	fmt.Println("105 / 7 = ", d)
}

// hàm có các đối số được đặt tên
func calculator(a, b int) (mul int, div int) {

	// tại đây phép gán đơn giản sẽ
	// khởi tạo giá trị cho nó
	mul = a * b
	div = a / b

	// tại đây bạn sẽ có từ khóa return
	// không có bất kỳ tham số kết quả nào
	return
}

Result:

105 x 7 =  735
105 / 7 =  15

Important Note:

  • If the types of all the return arguments are named in common or are the same, then you can specify a common data type. Compare the code below with the example you read above to understand better.
// hàm có đối số đã được đặt tên
func calculator(a, b int) (mul, div int) {
  • Here, the variables mul and div are both of type int . So you can also declare named arguments with generic data types as function variables (i.e. a and b)
  • Using named return parameters enhances code readability as one can know about the return parameters just by reading the function signature.
  • After using a named return parameter, the return statement is often referred to as a Naked or Bare return .
  • By default, Golang defines all named variables with a value of zero and functions will be able to use them. In case the function does not modify the values, a value of zero will be returned automatically.
  • If you use the short declaration operator ( : = ) to initialize named return parameters, it will throw an error because it has already been initialized by the Go compiler. So you can use simple assignment ( = ) to assign values ​​to named return parameters.
// hàm có đối số được đặt tên
func calculator(a, b int) (mul int, div int) {

    // tại đây, nó sẽ báo lỗi
        // dưới dạng tham số đã được xác định
        // trong chữ ký hàm
    mul := a * b
    div := a / b

    // tại đây bạn có từ khóa return
    // không có bất kỳ tham số kết quả nào
    return
}
  • Named return arguments or minimal return statements are only good for short function signatures. For longer functions, explicitly return the result parameters (don't use named return parameters) to maintain readability of the code.
  • In case of named return arguments, a minimal or simple return statement is required.

Leave a Comment

How to use constants in Golang

How to use constants in Golang

What is a Constant or Const in Golang? Here's what you need to know about using constants in Go.

Volatile functions in Golang

Volatile functions in Golang

Variadic functions in Go allow you to pass a variable number of arguments to a function. Here's everything you need to know about variadic functions in Golang.

Keywords in Go

Keywords in Go

Keyword - Keywords are words in a language that are used for some internal processes or represent some predefined actions. Here is what you need to know about keywords in Golang.

Data types in Golang

Data types in Golang

Data types specify what type of data a valid Go variable can hold. In the Go language, types are divided into four categories as follows:

Function arguments in Golang

Function arguments in Golang

Go supports two main ways to pass arguments: Pass by Value and Pass by Reference. Go uses pass by value by default.

Function returning multiple values ​​in Golang

Function returning multiple values ​​in Golang

In Go 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.

Switch Statement in Go

Switch Statement in Go

Golang like most other programming languages ​​has switch statement. Here is how to use switch statement in Golang.

Cases to know when using selection statements in Golang

Cases to know when using selection statements in Golang

In this article, we will learn how to use default case to avoid deadlock. But first, we will learn what is deadlock case when using select command in Golang?

Anonymous structures and fields in Golang

Anonymous structures and fields in Golang

Anonymous structs in Golang are temporary structures with no names used for one-time purposes, while anonymous fields allow embedding of unnamed fields.

How to use Rune in Golang

How to use Rune in Golang

What is Rune in Golang? How to use Rune in Golang? This article will give you the answer.

How to use operators in Golang

How to use operators in Golang

Operators allow us to perform different types of operations on operands. In Go language, operators can be classified based on their different functions.

Void identifier in Golang

Void identifier in Golang

_(underscore) in Golang is called Blank Identifier. Identifier is a user-defined name of program elements used for identification purposes.

How to create basic program in Golang

How to create basic program in Golang

Hello, World! is the first basic program in any programming language. You can write this first program in Golang by following the steps below.

How to Install Go on Windows

How to Install Go on Windows

Golang can be easily installed on Windows. Here is a step-by-step guide to install Golang on Windows.

How to Fix Microsoft Teams Error Code 657Rx and 9Hehw

How to Fix Microsoft Teams Error Code 657Rx and 9Hehw

Stuck with Microsoft Teams Error Code 657Rx and 9Hehw? Discover proven, step-by-step solutions to fix these frustrating errors quickly. Restore smooth video calls and chats today—no tech expertise needed!

Solving Microsoft Teams For Business Error

Solving Microsoft Teams For Business Error

Tired of the frustrating Microsoft Teams "For Business" Error blocking your meetings? Get proven, step-by-step fixes to resolve it fast and boost productivity. Latest solutions inside!

How to Fix Microsoft Teams Error AADSTS50011 (Redirect URI Fix)

How to Fix Microsoft Teams Error AADSTS50011 (Redirect URI Fix)

Struggling with Microsoft Teams Error AADSTS50011? Discover the exact Redirect URI fix for seamless authentication. Step-by-step guide with screenshots to resolve it fast—no more login headaches!

How to Fix Microsoft Teams Breakout Rooms Not Erstellen

How to Fix Microsoft Teams Breakout Rooms Not Erstellen

Frustrated with Microsoft Teams Breakout Rooms not creating? Discover proven fixes for "Breakout Rooms Not Erstellen" errors. Step-by-step guide ensures smooth meetings every time.

Troubleshooting Microsoft Teams Error T Today

Troubleshooting Microsoft Teams Error T Today

Stuck with Microsoft Teams "Error T" today? Get proven, step-by-step troubleshooting for Microsoft Teams "Error T" with quick fixes, causes, and solutions to get back to seamless collaboration. Works on desktop, web, and mobile!

How to Fix Microsoft Teams On iPhone App Error

How to Fix Microsoft Teams On iPhone App Error

Tired of Microsoft Teams "On iPhone" App Error crashing your meetings? Discover proven fixes for sign-in failures, crashes, and glitches on the latest iOS. Step-by-step guide with quick wins!

Solving Microsoft Teams Web Client Disabled Error

Solving Microsoft Teams Web Client Disabled Error

Tired of the Microsoft Teams Web Client "Disabled" Error blocking your meetings? Follow our proven step-by-step fixes to solve Microsoft Teams Web Client Disabled Error fast – no IT help needed!

How to Check Your Microsoft Teams Version Using PowerShell

How to Check Your Microsoft Teams Version Using PowerShell

Discover how to check your Microsoft Teams version using PowerShell in seconds. Step-by-step guide for IT pros, admins, and everyday users to verify updates, troubleshoot issues, and stay ahead. Accurate, fast, and foolproof methods revealed!

Solving Microsoft Teams Guest Access Not Working

Solving Microsoft Teams Guest Access Not Working

Struggling with Microsoft Teams Guest Access Not Working? Discover proven fixes, from quick checks to advanced troubleshooting, to get guests collaborating seamlessly in no time.

Where is the Microsoft Teams Recycle Bin? How to Recover Deleted Files

Where is the Microsoft Teams Recycle Bin? How to Recover Deleted Files

Lost important files in Microsoft Teams? Discover the exact location of the Microsoft Teams Recycle Bin and follow our proven steps to recover deleted files quickly and easily—no tech skills required!

The Most Essential Vitamins for Women Over 50

The Most Essential Vitamins for Women Over 50

As you age, many of your bodys organs can weaken, but it doesnt have to be that way if you take care of yourself. Here are the most essential vitamins for women over 50.

Where to Find Your Microsoft Teams ID and Account Info

Where to Find Your Microsoft Teams ID and Account Info

Struggling to locate your Microsoft Teams ID or account details? This step-by-step guide shows exactly where to find your Microsoft Teams ID and account info on desktop, web, mobile, and more for seamless collaboration.

How to Enable Microsoft Teams Transcription for Meetings

How to Enable Microsoft Teams Transcription for Meetings

Unlock the power of Microsoft Teams transcription for meetings with this step-by-step guide. Learn how to enable transcription, prerequisites, and tips for accurate transcripts to boost productivity and accessibility. Perfect for teams in 2026.

Troubleshooting Microsoft Teams Unknown Error Fix

Troubleshooting Microsoft Teams Unknown Error Fix

Tired of Microsoft Teams "Unknown Error" crashing your meetings? Discover step-by-step troubleshooting fixes that work instantly. Clear cache, reset app, and more—no tech skills needed!

Supplements that people with irritable bowel syndrome should not take

Supplements that people with irritable bowel syndrome should not take

Not all supplements are beneficial for irritable bowel syndrome (IBS), some may even worsen your symptoms.