Özet - Salt Okunur Tablo
Coddy'nin Lua Journey'sinin Logic & Flow bölümünün bir parçası — ders 23 / 54.
Görev
Kolayoriginal parametresini alan ve tablonun salt okunur bir sürümünü döndüren bir makeReadOnly fonksiyonu yazın.
Orijinal tablodan okuma yapılmasına izin veren ancak herhangi bir değişikliği engelleyen bir metatabloya sahip bir proxy tablosu oluşturun.
Mantık:
- Boş bir proxy tablosu oluşturun
- (Okumaya izin vermek için)
__indexdeğeri orijinal tabloya ayarlanmış bir metatablo oluşturun - Metatabloya hiçbir şey yapmayan bir
__newindexekleyin (değişiklikleri engellemek için) setmetatable()kullanarak metatabloyu proxy'ye ekleyin- Proxy tablosunu döndürün
Parametreler:
original(table): Değişikliklerden korunacak tablo
Döndürür: Orijinal tabloya salt okunur erişim sağlayan bir proxy tablosu (table)
Kendin dene
function makeReadOnly(original)
-- Kodu buraya yazın
end
Logic & Flow bölümündeki tüm dersler
1İleri Düzey Tablo Yineleme
pairs() ile Yinelemeipairs() ile Yinelemepairs() vs. ipairs()Özet - Karakter Sayfası4Metatable'lara Giriş
Metatable Nedir?setmetatable & getmetatable__index Metametodu__newindex Metametodu__tostring MetametoduAritmetik Metametotlar Bölüm 1Aritmetik Metametotlar Bölüm 2Özet - Salt Okunur Tablo2Daha Fazla Tablo Kütüphanesi Fonksiyonu
table.concat()Tablo Oluşturma ve unpack()table.sort()Fonksiyonlar ile Özel SıralamaÖzet - Yüksek Skor Tablosu