ADVERTISEMENT
ADVERTISEMENT

How to instantiate struct using new keyword in Golang?

Learn about the structure in Golang, structure (struct) instantiation using the new keyword.
Submitted by IncludeHelp, on October 05, 2021

In the Go programming language (other programming languages such as C and C++) a structure (struct) is mainly used to create a customized type that can hold all other data types.

A struct can also be created by using the new keyword and the structure’s data can be accessed/manipulated by using the dot (.) operator.

Syntax:

structure_variable := new(structure_name)

Consider the below examples demonstrating the structure instantiation using the new keyword.

Example 1:

// Example structure instantiation
// using the new keyword

package main

import "fmt"

// structure
type student struct {
	name string
	roll int
	perc float32
}

func main() {
	std := new(student)
	std.name = "Alex"
	std.roll = 108
	std.perc = 84.8

	// Printing structure
	fmt.Println("std:", std)
	fmt.Println("Elements...")
	fmt.Println("Name:", std.name)
	fmt.Println("Roll Number:", std.roll)
	fmt.Println("Percentage:", std.perc)
}

Output:

std: &{Alex 108 84.8}
Elements...
Name: Alex
Roll Number: 108
Percentage: 84.8

Example 2:

// Example structure instantiation
// using the new keyword

package main

import "fmt"

// structure
type Address struct {
	name    string
	city    string
	pincode int
}

func main() {
	add1 := new(Address)
	add1.name = "Alex"
	add1.city = "New Delhi"
	add1.pincode = 110065

	add2 := new(Address)
	add2.name = "Alvin"
	add2.city = "Mumbai"
	add2.pincode = 400004

	// Printing structures
	fmt.Println("add1:", add1)
	fmt.Println("Elements...")
	fmt.Println("Name:", add1.name)
	fmt.Println("City:", add1.city)
	fmt.Println("Pincode:", add1.pincode)

	fmt.Println("add2:", add2)
	fmt.Println("Elements...")
	fmt.Println("Name:", add2.name)
	fmt.Println("City:", add2.city)
	fmt.Println("Pincode:", add2.pincode)
}

Output:

add1: &{Alex New Delhi 110065}
Elements...
Name: Alex
City: New Delhi
Pincode: 110065
add2: &{Alvin Mumbai 400004}
Elements...
Name: Alvin
City: Mumbai
Pincode: 400004

Golang FAQ »

ADVERTISEMENT



ADVERTISEMENT



Comments and Discussions


ADVERTISEMENT

ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT

Languages: » C » C++ » C++ STL » Java » Data Structure » C#.Net » Android » Kotlin » SQL
Web Technologies: » PHP » Python » JavaScript » CSS » Ajax » Node.js » Web programming/HTML
Solved programs: » C » C++ » DS » Java » C#
Aptitude que. & ans.: » C » C++ » Java » DBMS
Interview que. & ans.: » C » Embedded C » Java » SEO » HR
CS Subjects: » CS Basics » O.S. » Networks » DBMS » Embedded Systems » Cloud Computing
» Machine learning » CS Organizations » Linux » DOS
More: » Articles » Puzzles » News/Updates

© https://www.includehelp.com some rights reserved.