Golang program to implement a user-defined function as a method

Here, we are going to learn how to implement a user-defined function as a method in Golang (Go Language)?
Submitted by Nidhi, on March 11, 2021 [Last updated : March 03, 2023]

Implementing a user-defined function as a method in Golang

Problem Solution:

In this program, we will implement a function, which looks like a method and performed operations on the member of a structure.

Program/Source Code:

The source code to implement a user-defined function as a method is given below. The given program is compiled and executed successfully.

Golang code to implement a user-defined function as a method

// Golang program to implement a
// user-defined function as a method

package main

import "fmt"

type Number struct {
	num1, num2 int
}

//Add both numbers
func (number Number) Sum() int {
	return (number.num1 + number.num2)
}

func main() {
	number := Number{num1: 10, num2: 20}
	fmt.Printf("Sum: %d", number.Sum())
}

Output:

Sum: 30

Explanation:

In the above program, we declare the package main. The main package is used to tell the Go language compiler that the package must be compiled and produced the executable file. Here, we imported the fmt package that includes the files of package fmt then we can use a function related to the fmt package.

type Number struct {
   num1,num2 int
}

//Add both numbers
func(number Number) Sum() int {
   return  (number.num1+number.num2)
}

In the above code, we created a structure Number that contains two members num1 and num2. After that, we implemented a function Sum() that operates on the member of the structure and returns the result to the calling function.

In the main() function, we created the object of structure and initialized the members. After that calculated the sum of structure members using the Sum() function and return the result on the console screen.

Golang User-defined Function Programs »






Comments and Discussions!

Load comments ↻






Copyright © 2024 www.includehelp.com. All rights reserved.