Menu
Coddy logo textTech

Struct'ları Başlatma

Coddy'nin GO Journey'sinin Temeller bölümünün bir parçası — ders 98 / 109.

Go'da struct'ları başlatmanın birden fazla yolu vardır. En yaygın yöntemleri inceleyelim.

Alan adlarını kullanarak bir struct oluşturun:

type Person struct {
    name string
    age  int
}

func main() {
    // Alan adlarını kullanarak ilklendir
    person1 := Person{name: "Alice", age: 30}
    fmt.Println(person1)
}

Çıktı, ilklendirilmiş struct'ımızı gösterir:

{Alice 30}

Bir struct'ı alan adları olmadan da başlatabilirsiniz, ancak değerleri sırasıyla sağlamanız gerekir:

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

Sonuç:

{Bob 25}

Sıfır değerlere sahip boş bir struct oluşturun:

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

Sonuç:

{  0}
challenge icon

Görev

Başlangıç

Bu görevde, Go dilinde bir struct (yapı) başlatma pratiği yapacaksınız. İsim, yaş ve kişinin çalışıp çalışmadığına dair alanları içeren bir Person struct'ı tanımladık.

Göreviniz, aşağıdaki bilgileri kullanarak yeni bir Person struct örneği oluşturmaktır:

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

Ardından, bu kişi hakkındaki bilgileri ekrana yazdıracağız.

Kopya kağıdı

Go'da struct'ları başlatmanın birden fazla yolu vardır:

Alan adlarıyla başlatma:

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

Alan adları olmadan başlatma (değerler sırayla olmalıdır):

person2 := Person{"Bob", 25}

Sıfır değerlerle boş struct oluşturma:

person3 := Person{}

Kendin dene

package main

import "fmt"

// Person yapı tanımı
type Person struct {
	Name       string
	Age        int
	IsEmployed bool
}

func main() {
	// YAPILACAK: "Alice" ismi, 28 yaş ve isEmployed true ile bir Person yapısını başlatın
	// Alan adlarını veya yapı değişmez sözdizimini kullanın
	var alice Person
	
	// Kişinin bilgilerini yazdırın
	fmt.Printf("Name: %s\n", alice.Name)
	fmt.Printf("Age: %d\n", alice.Age)
	fmt.Printf("Employed: %t\n", alice.IsEmployed)
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Temeller bölümündeki tüm dersler