Golangdaki anonim yapılar ve alanlar

Kaydolun ve günde 1000 $ kazanın ⋙

Golang'da yapılar (veya yapılar), farklı tipteki öğeleri tek bir birimde gruplandırmamıza olanak tanır; bu da gerçek dünyadaki varlıkları modellemek için yararlıdır . Golang'daki anonim yapılar, tek seferlik amaçlar için kullanılan, isimlendirilmemiş geçici yapılardır; anonim alanlar ise isimlendirilmemiş alanların gömülmesine olanak tanır.

Golang'daki anonim yapılar ve alanlar

Örneğin:

package main
import "fmt"

// struct học sinh với cấu trúc và trường ẩn danh
type Student struct {
    struct {    // Cấu trúc bên trong ẩn danh cho thông tin cá nhân
        name string
        enrollment int
    }
    GPA float64  // Trường chuẩn
}

func main() {
    student := Student{
        struct {
            name string
            enrollment int
        }{
            name: "A",
            enrollment: 12345,
        },
        GPA: 3.8,
    }
    fmt.Println("Name:", student.name)
    fmt.Println("Enrollment:", student.enrollment)
    fmt.Println("GPA:", student.GPA)
}

Sözdizimi:

variable := struct {
    field1 dataType1
    field2 dataType2                                                          # Cấu trúc ẩn danh
    // Trường bổ sung khi cần
}{value1, value2}


type StructName struct {
    dataType1
    dataType2                                                                    # Trường ẩn danh                                        
    // Trường ẩn danh bổ sung
}

Go'da Anonim Yapılar

Go'da anonim yapılar bir isim olmadan tanımlanır ve geçici, tek kullanımlık yapılar oluşturmak için kullanışlıdır. Söz dizimi ve kod örneği şöyledir.

Sözdizimi:

variable := struct {
    field1 dataType1
    field2 dataType2
    // Các trường bổ sung khi cần
}{value1, value2}

Örneğin:

package main
import "fmt"
// Cấu trúc sinh viên với cấu trúc bên trong ẩn danh cho thông tin cá nhân
type Student struct {
    personalDetails struct { // Cấu trúc ẩn danh bên trong cho thông tin cá nhân
        name       string
        enrollment int
    }
    GPA float64 // Trường chuẩn
}
func main() {
    // Khởi tạo cấu trúc bên trong cho student
    student := Student{
        personalDetails: struct {
            name       string
            enrollment int
        }{
            name:       "A",
            enrollment: 12345,
        },
        GPA: 3.8,
    }
    // Hiện giá trị
    fmt.Println("Name:", student.personalDetails.name)
    fmt.Println("Enrollment:", student.personalDetails.enrollment)
    fmt.Println("GPA:", student.GPA)
}

Sonuç:

Name: A
Enrollment: 12345
GPA: 3.8

Bu kod , içerisinde isim ve kayıt bilgilerinin saklandığı anonim personalDetails yapısı bulunan bir Öğrenci yapısını tanımlar. Daha sonra bu alanlara ait değerlerle student'i başlatıp yazdırıyoruz.

Anonim alanlar

Go'daki anonim alanlar, alanları açıkça adlandırmadan tanımlamanıza olanak tanır, yalnızca türleri belirtilir. Bu, alanların doğal olarak tür adını takip ettiği durumlarda yararlıdır.

Sözdizimi

type StructName struct {
    dataType1
    dataType2
    // Additional anonymous fields
}

Örneğin:

package main
import "fmt"

// Cấu trúc học sinh bằng các trường ẩn danh
type Student struct {
    int     // Số đăng ký (trường ẩn danh)
    string  // Tên trường ẩn danh
    float64 // GPA (trường ẩn danh)
}

func main() {
    // Khởi tạo struct học sinh với các trường ẩn danh
    student := Student{12345, "A", 3.8}

    // Hiện giá trị
    fmt.Println("Enrollment:", student.int)
    fmt.Println("Name:", student.string)
    fmt.Println("GPA:", student.float64)
}

Sonuç:

Enrollment: 12345
Name: A
GPA: 3.8

Burada veri tipleri ( int, string, float64 ) alan adı görevi gördüğünden değerlere erişim tiplere bağlıdır.

Golang'daki Anonim Alanlar Hakkında Hatırlanması Gereken Önemli Noktalar

1. Benzersiz gereklilik: Aynı türdeki iki alanı tek bir yapıda kullanamazsınız. Örneğin:

type InvalidStudent struct {
    int
    int // Error: duplicate type
}

2. Adlandırılmış ve anonim alanları birleştirme: Bir yapıda anonim ve adlandırılmış alanları birleştirebilirsiniz.

type Student struct {
    id int // Named field
    int    // Anonymous field
}
Sign up and earn $1000 a day ⋙

Leave a Comment

Godaki Anahtar Sözcükler

Godaki Anahtar Sözcükler

Anahtar Kelime - Anahtar kelimeler, bir dildeki bazı iç işlemler için kullanılan veya önceden tanımlanmış bazı eylemleri temsil eden kelimelerdir. Golang'da anahtar kelimeler hakkında bilmeniz gerekenler şunlardır.

Golangdaki veri türleri

Golangdaki veri türleri

Veri türü, geçerli bir Go değişkeninin içerebileceği veri türünü belirtir. Go dilinde tipler aşağıdaki gibi dört kategoriye ayrılır:

Golangda fonksiyon argümanları

Golangda fonksiyon argümanları

Go, argümanları geçirmenin iki ana yolunu destekler: Değere göre geçirme ve Referansa göre geçirme. Go varsayılan olarak pass by value'yu kullanır.

Golangda birden fazla değer döndüren fonksiyon

Golangda birden fazla değer döndüren fonksiyon

Go dilinde return ifadesi kullanılarak bir fonksiyondan birden fazla değer döndürülebilir. Başka bir deyişle, bir fonksiyon içerisinde return ifadesi birden fazla değer döndürebilir.

Goda Switch İfadesi

Goda Switch İfadesi

Golang'da diğer programlama dillerinin çoğunda olduğu gibi switch ifadesi bulunmaktadır. Golang'da switch ifadesinin nasıl kullanılacağını burada bulabilirsiniz.

Golangda seçim ifadeleri kullanılırken bilinmesi gereken durumlar

Golangda seçim ifadeleri kullanılırken bilinmesi gereken durumlar

Bu yazımızda çıkmazdan kaçınmak için varsayılan durumun nasıl kullanılacağını öğreneceğiz. Ama önce Golang select komutunu kullanırken deadlock durumunun ne olduğunu öğrenelim.

Golangda Rune nasıl kullanılır

Golangda Rune nasıl kullanılır

Golang'da Rünler Nelerdir? Golang'da Rune nasıl kullanılır? Cevabını makalemizde bulacaksınız.

Golangda operatörler nasıl kullanılır

Golangda operatörler nasıl kullanılır

Operatörler, operandlar üzerinde farklı tipte işlemler yapmamızı sağlar. Go dilinde operatörler farklı işlevlerine göre sınıflandırılabilir.

Golangda boşluk tanımlayıcısı

Golangda boşluk tanımlayıcısı

Golang'da _(alt çizgi) Boş Tanımlayıcı olarak adlandırılır. Tanımlayıcı, tanımlama amacıyla kullanılan program bileşenlerinin kullanıcı tarafından tanımlanan adıdır.

Golangda temel program nasıl oluşturulur

Golangda temel program nasıl oluşturulur

Selam Dünya! Herhangi bir programlama dilindeki ilk temel programdır. Aşağıdaki adımları izleyerek Golang'da ilk programınızı yazabilirsiniz.

Goyu Windowsa Nasıl Yüklerim

Goyu Windowsa Nasıl Yüklerim

Golang Windows'a kolaylıkla kurulabilir. Aşağıda Golang'ı Windows'a yüklemeye ilişkin ayrıntılı adım adım bir kılavuz bulunmaktadır.

Golangda aynı adı taşıyan yöntemler

Golangda aynı adı taşıyan yöntemler

Golang, aynı paket içerisinde aynı isimde iki veya daha fazla metot oluşturulmasına izin verir, ancak bu metotların alıcılarının farklı tiplerde olması gerekir.

Godaki Fonksiyonlar

Godaki Fonksiyonlar

Go'da fonksiyonlar, hafızayı korumak, okunabilirliği artırmak ve zamandan tasarruf etmek için program boyunca yeniden kullanılabilen, belirli görevleri gerçekleştiren kod bloklarıdır.

Goda Değişken Kapsamı

Goda Değişken Kapsamı

Golang'da bir değişkenin kapsamı, o değişkenin programda hangi bölümde erişilebilir olduğunu belirler. Go'da tüm tanımlayıcıların derleme zamanında belirlenen bir sözcüksel kapsamı vardır.

Google Play Storeun uygulamaları otomatik olarak güncellememesi sorununu düzeltin

Google Play Storeun uygulamaları otomatik olarak güncellememesi sorununu düzeltin

Play Store uygulamaları otomatik olarak güncellemediğinde, kullanıcılar yeni özellikleri, güvenlik yamalarını ve hata düzeltmelerini kaçırma riskiyle karşı karşıya kalıyor. Neyse ki, bu adımları kullanarak Google Play Store'u uygulamalarınızı otomatik olarak güncelleyecek şekilde yapılandırabilirsiniz.

WiFi Nedir? WiFi nasıl çalışır?

WiFi Nedir? WiFi nasıl çalışır?

WiFi, dünyanın dört bir yanındaki insanların cihazlarını kablosuz olarak internete bağlamak için kullandıkları bir yerel alan ağı ve kablosuz İnternet erişimi biçimidir.

Nintendo, Sanal Oyun Kartları ile dijital oyunların paylaşılma biçiminde devrim yaratıyor

Nintendo, Sanal Oyun Kartları ile dijital oyunların paylaşılma biçiminde devrim yaratıyor

Nintendo, dijital oyunların dağıtım şeklini tamamen değiştirecek bir hamleyle, Nintendo Direct etkinliğinde Sanal Oyun Kartları sistemini resmen tanıttı.

Messengerda telefon ve bilgisayarda dosya gönderme talimatları

Messengerda telefon ve bilgisayarda dosya gönderme talimatları

Messenger'da fotoğraf göndermenin yanı sıra kullanıcılar artık uygulama üzerinden pdf, doc, xlx gibi tüm belge dosya formatlarında dosyaları da başkalarına gönderebilecek.

CapCutta altyazı ve şarkı sözleri otomatik olarak nasıl eklenir

CapCutta altyazı ve şarkı sözleri otomatik olarak nasıl eklenir

CapCut ayrıca bazı ünlü video altyazı uygulamaları gibi videoya altyazı ekleme seçeneğine de sahiptir. Uygulama daha sonra videodaki sesi ve konuşmayı otomatik olarak tanıyor ve videoda gösteriyor.

2,4 GHz ve 5 GHz WiFi arasındaki fark

2,4 GHz ve 5 GHz WiFi arasındaki fark

Eski yönlendiricinizi değiştirmeye karar verdiniz. Yeni kablosuz yönlendiricinizi kutusundan çıkardığınızda neden iki ağ olduğunu merak ediyor olabilirsiniz: 2,4 GHz ve 5 GHz. Peki 5GHz ağı daha mı güçlü? Aralarındaki fark nedir?

Günümüzün en iyi 10 internet güvenlik yazılımı

Günümüzün en iyi 10 internet güvenlik yazılımı

Günümüzde kullanıcılar PC, Mac veya akıllı telefon gibi tüm cihazlarını korumak için ödeme yapabiliyor. Ancak bugün piyasada çok fazla seçenek olduğu için nereden başlayacağınızı bilmek zor olabilir. Aşağıda günümüzde mevcut olan en iyi İnternet güvenlik yazılım paketlerinin bir listesi bulunmaktadır.

Adobe Express dijital sanatçılar ve içerik oluşturucular için neden en iyi araçtır?

Adobe Express dijital sanatçılar ve içerik oluşturucular için neden en iyi araçtır?

Dijital içerik oluşturucular için zengin araçlar sunan Adobe Express, herkes için en iyi hepsi bir arada yaratıcı araçtır ve hiçbir yere kaybolmayacaktır.

Gmaili masaüstü uygulamasına nasıl dönüştürebilirim?

Gmaili masaüstü uygulamasına nasıl dönüştürebilirim?

Gmail'i daha rahat kullanabilmek için, Gmail'i artık manuel olarak erişmenize gerek kalmadan bilgisayarınızda bir uygulamaya dönüştürebilirsiniz.

En son Thien Nhai Minh Nguyet Dao Kodu ve kodun nasıl girileceği

En son Thien Nhai Minh Nguyet Dao Kodu ve kodun nasıl girileceği

Thien Nhai Minh Nguyet Dao Kodu, oyuncuların oyuna ilk katıldıklarında sıkılmamalarına yardımcı oluyor.

Hapicin Neden Favori Ücretsiz Fotoğraf Editörü Olduğunun 7 Nedeni

Hapicin Neden Favori Ücretsiz Fotoğraf Editörü Olduğunun 7 Nedeni

TikTok ve CapCut'ın sahibi ve geliştiricisi olan Hypic, birçok kişinin telefonunda kullandığı bir fotoğraf düzenleme uygulaması ve favori olmasının birçok nedeni var.

Daha ucuz, geri dönüştürülebilir ve patlamayan bir su pili yaratmak

Daha ucuz, geri dönüştürülebilir ve patlamayan bir su pili yaratmak

Melbourne'deki (Avustralya) RMIT Üniversitesi'ndeki bilim insanları, geleneksel pillerde kullanılan tehlikeli kimyasal elektrolitleri suyla değiştirerek geri dönüştürülebilir bir su pili ürettiler.

Ayda bir gün Dünyada kaç gündür?

Ayda bir gün Dünyada kaç gündür?

Ay'ın Dünya etrafındaki dönüş süresi yaklaşık 27,3 gün iken, Dünya'nın kendi ekseni etrafındaki dönüşünü 24 saatte (bir gün - gece) tamamlar.

Küçük balıklar silah sesi kadar yüksek ses çıkarabilir

Küçük balıklar silah sesi kadar yüksek ses çıkarabilir

PNAS dergisinde yayımlanan araştırmaya göre, erkek Danionella cerebrum balıkları yalnızca bir tırnak büyüklüğünde olmasına rağmen 140 desibelin üzerinde ses çıkarabiliyor.

Lien Quan Mobileı oynamak için yapılandırma ve oynamak için bir cihaz seçme

Lien Quan Mobileı oynamak için yapılandırma ve oynamak için bir cihaz seçme

Bu makale, Lien Quan Mobile oynamak için gereken minimum konfigürasyonu açıkça belirtecek ve Lien Quan Mobile oynamak için bir cihaz seçmenize nasıl yardımcı olacağınızı açıklayacaktır.