BT Sözlüğü › Programlama › Etiketli birleşim (tagged union)

Etiketli birleşim (tagged union)

Programlama Svenska → Güncellendi: 2026-10-11

Hangi varyantın geçerli olduğunu açık bir “etiket” alanıyla belirten birleşim türü. C/C++ union’ı etiketsizdir (ham bellek paylaşımı, çalışma zamanı hatalarına açık); etiketli birleşimde derleyicinin doğrulayabileceği tür bilgisi bulunur.

TypeScript’te buna discriminated union denir: type Result = { kind: 'ok'; value: number } | { kind: 'err'; error: string }. Derleyici kind üzerindeki switch ile türü daraltır. Rust’ın enum’ı biçimsel olarak etiketli birleşimdir — her varyantın örtük bir ayırt edicisi vardır. C++’ta: std::variant + std::visit.

Klasik kullanım: API yanıt türleri, durum makineleri, ayrıştırıcı AST düğümleri. Modern tür sistemleri etiketli birleşimi güvenli kılar; eski C union sözdizimi tehlikelidir (yanlış alan okunabilir, tanımsız davranış).

← Sözlüğe dön