[go] Go 언어의 구조체
Go 언어는 구조체(Struct)라는 데이터 타입을 제공합니다. 구조체는 서로 다른 데이터 타입을 묶어서 하나의 새로운 데이터 타입을 정의할 수 있는데, 이를 통해 복합적인 데이터를 표현할 수 있습니다.
구조체 정의하기
구조체를 정의하려면 type
키워드와 함께 다음과 같은 구문을 사용합니다.
type 구조체이름 struct {
필드1 타입1
필드2 타입2
//...
}
예를 들어, 사람의 정보를 담는 구조체를 정의해보겠습니다.
type Person struct {
Name string
Age int
City string
}
위의 예제에서 Person
은 구조체의 이름이며, Name
, Age
, City
는 해당 구조체의 필드 이름이고 각각의 타입은 string
, int
, string
입니다.
구조체 인스턴스 만들기
구조체를 사용하여 인스턴스를 만들고, 필드에 값을 할당할 수 있습니다.
func main() {
var person1 Person
person1.Name = "Alice"
person1.Age = 25
person1.City = "New York"
fmt.Println(person1)
}
구조체 초기화
구조체를 초기화할 때 필드의 값을 지정하여 바로 인스턴스를 생성할 수 있습니다.
func main() {
person2 := Person{Name: "Bob", Age: 30, City: "San Francisco"}
fmt.Println(person2)
}
구조체 포인터
구조체의 인스턴스를 가리키는 포인터를 사용할 수도 있습니다.
func main() {
var personPtr *Person
personPtr = &person1
fmt.Println(personPtr.Name)
}
구조체는 Go 언어에서 복합 데이터를 다루는 강력한 도구로 활용될 수 있습니다.
이상으로 Go 언어의 구조체에 대한 간략한 소개를 마치겠습니다.
더 자세한 정보는 Go 언어 공식 문서를 참고하시기 바랍니다.