Menu
Coddy logo textTech

구조체 초기화하기

Coddy GO 여정의 기초 섹션에 포함된 레슨 — 109개 중 98번째.

Go에서 구조체를 초기화하는 방법은 여러 가지가 있습니다. 가장 일반적인 방법들을 살펴보겠습니다.

필드 이름을 사용하여 구조체를 생성합니다:

type Person struct {
    name string
    age  int
}

func main() {
    // 필드 이름을 사용하여 초기화
    person1 := Person{name: "Alice", age: 30}
    fmt.Println(person1)
}

출력 결과는 초기화된 구조체를 보여줍니다:

{Alice 30}

필드 이름 없이 구조체를 초기화할 수도 있지만, 순서대로 값을 제공해야 합니다:

person2 := Person{"Bob", 25}
fmt.Println(person2)

결과:

{Bob 25}

제로 값(zero values)을 가진 빈 구조체를 생성합니다:

person3 := Person{}
fmt.Println(person3)

결과:

{  0}
challenge icon

챌린지

초급

이 챌린지에서는 Go에서 구조체(struct)를 초기화하는 연습을 합니다. 이름(name), 나이(age), 고용 여부 필드를 가진 Person 구조체를 정의했습니다.

여러분의 작업은 다음 정보를 사용하여 새로운 Person 구조체 인스턴스를 초기화하는 것입니다:

  • Name: "Alice"
  • Age: 28
  • IsEmployed: true

그런 다음 이 사람에 대한 정보를 출력할 것입니다.

치트 시트

Go에서 구조체를 초기화하는 방법에는 여러 가지가 있습니다:

필드 이름을 사용하여 초기화:

person1 := Person{name: "Alice", age: 30}

필드 이름 없이 초기화 (값은 순서대로여야 함):

person2 := Person{"Bob", 25}

제로 값(zero values)으로 빈 구조체 생성:

person3 := Person{}

직접 해보기

package main

import "fmt"

// Person 구조체 정의
type Person struct {
	Name       string
	Age        int
	IsEmployed bool
}

func main() {
	// TODO: 이름은 "Alice", 나이는 28, isEmployed는 true로 Person 구조체 초기화
	// 필드 이름을 사용하거나 구조체 리터럴 구문을 사용하세요
	var alice Person
	
	// 사람의 정보 출력
	fmt.Printf("Name: %s\n", alice.Name)
	fmt.Printf("Age: %d\n", alice.Age)
	fmt.Printf("Employed: %t\n", alice.IsEmployed)
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨