Zig Academy · Ders

Zig'de Gizli Bellek Ayırma Neden Yoktur?

Bellek ayırma işlemi her zaman dışarıdan aktarılır.

1. ders / 413 adım

Zig'de Gizli Bellek Ayırma Neden Yoktur?, CoddyKit'te ücretsiz bir Zig Academy dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Zig Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Zig Academy kursu toplamda 4 dersten oluşur.

Bellek Açıkça Yönetilir

Zig'de hiçbir standart kitaplık işlevi gizlice heap belleği almaz. Kodun allocate etmesi gerekiyorsa bunu açıkça belirtmelidir. 📦

Allocator'ı Siz Geçirirsiniz

Bellek ayıran her şey bir allocator'ı parametre olarak alır. Bir işleve onu oluşturacak aracı vermediğiniz sürece bellek kendiliğinden ortaya çıkmaz.

fn buildList(allocator: std.mem.Allocator) !void {}

Gizli new Anahtar Sözcüğü Yok

Zig'de new işleci ve çöp toplayıcı yoktur. Birçok dilde olduğu gibi hiçbir şey arka planda sizden habersiz heap'e erişmez.

Bu Neden Önemlidir

Tahsis görünür olduğundan belleğin where kaynağını her zaman bilirsiniz. Bu, gömülü yongalar, çekirdekler ve sıkı oyun döngüleri için hayati önem taşır.

İmza Bilgisini Okuyun

Tahsis edebilen bir işlev bunu signature bölümünde gösterir: bir allocator alır ve genellikle ! içeren bir error union döndürür.

fn dupe(a: std.mem.Allocator, s: []const u8) ![]u8 {}

Stack Ücretsizdir

Sıradan yerel değişkenler stack üzerinde yaşar ve allocator gerektirmez. Bir değerin işlevinden daha uzun yaşaması veya çalışma zamanında büyümesi gerektiğinde allocator kullanırsınız.

var x: i32 = 5; // stack, no allocation

Tahsis Başarısız Olabilir

Heap belleği istemek fail edebilir; bu nedenle tahsis yapan işlevler bir error döndürür. Olası bir OutOfMemory durumunu ele almalısınız, asla yok saymamalısınız.

Oluşturduğunuz Şey Size Aittir

Allocator'ı çağıran kişi sonucu owns eder ve onu free etmelidir. Zig belleğinizi sizin için hiçbir zaman free etmez; böylece ownership her zaman açıktır.

Allocator'ları Özgürce Değiştirin

Allocator bir parametre olduğundan mantığı değiştirmeden stratejileri swap edebilirsiniz. Tests bir allocator, production ise başka bir allocator kullanır.

Kitaplıklar Dürüst Kalır

İyi yazılmış bir kitaplık tahsisi gizlemez. Kendi allocator'ınızı kabul eder; böylece başka kişilerin kodunun içinde bile belleği siz denetlersiniz.

Tasarım Gereği Öngörülebilir

Bu kural, Zig'in gizli kontrol akışı olmaması vaadinin bir parçasıdır. Explicit tahsis, programları öngörülebilir ve anlaşılması kolay tutar. ✅

Hızlı Kontrol

Bir Zig işlevinin tahsis etme yetkisini nasıl elde ettiğini hatırlayın.

Özet

Zig'de no hidden allocations olduğunu gördünüz: bellek yalnızca geçirdiğiniz bir allocator aracılığıyla gelir; oluşturduğunuz her şeyin sahibi olur ve onu free edersiniz. 🎯

Başlamak ücretsiz

Yapay zeka eğitmeniyle Zig öğren — ücretsiz

Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.

Kurslar
30
Dersler
120

Sıkça Sorulan Sorular

“Zig'de Gizli Bellek Ayırma Neden Yoktur?” dersi ücretsiz mi?

Evet — “Zig'de Gizli Bellek Ayırma Neden Yoktur?” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Zig Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Zig Academy kursu toplamda 4 dersten oluşur.

“Zig'de Gizli Bellek Ayırma Neden Yoktur?” dersinde ne öğreneceğim?

Bellek ayırma işlemi her zaman dışarıdan aktarılır. Zig Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Zig Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Zig Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.

“Zig'de Gizli Bellek Ayırma Neden Yoktur?” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Zig Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Zig Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Zig'de Gizli Bellek Ayırma Neden Yoktur?
  2. Ayırıcı Arayüzü
  3. alloc, free, create, destroy
  4. ArrayList ile Dinamik Listeler
← Zig Academy Sayfasına Dön