Ben 60 * 4 boolean değerlerini depolamak için beni gerektiren bir kod üzerinde çalışıyorum, bu değerler için başlıklar bir plist depolanıyor. Ben zamanında boolean değerlerini düzenlemeye ihtiyaç ve Mantıksal değerleri depolamak için SQLite veritabanı kullanarak veri böyle büyük miktarda heyecanlı olur easily..also Plist dosyasını güncellemek için bir yol bulamadı ... herhangi basit bir yolu aracılığıyla var mı hangi depolayabilir ve zamanında ve uygulama başladıktan sonra hem kolayca bu değerleri alabilir?
boolean değişkenler geniş bir dizi depolamak için en iyi yolu?
Ben bir kâfir olmak istemem ama böyle durumlar için basit bir kural var: prematüre optimizasyon bütün kötülüklerin anasıdır.
60 * 4, sadece 240 Boolean olup. Bir şekilde kötü şekilde saklamak ve boolean başına 1k almaya yönetmek bile, o hala sadece 240k var. Sürece bu depolama yerine RAM yöntem olduğu kimin umurunda? Neden olabildiğince basit biçimde başlayıp şey Seninle sonra geldiğinde bunu düzeltmek değil? SQLite bunun için mükemmel iyi olurdu.
Eğer nakliye yaklaştığınız halde bir sorun olarak bu tespit varsa, elbette bu cevabı görmezden. :)
onun NSArray veya NSMutableArray kullanmak çok daha kolay olacak iken, yukarıda belirtildiği gibi, standart C ++ vektör sınıfını kullanarak bakmak olabilir. AFAIK bu çok alanı daha verimli wrt olduğunu. belleğin ayrılması.
Sen boolean dizi depolama NSData yöntemi kullanabilirsiniz, ama aynı zamanda sadece kakao doğal yapalım olabilir:
NSArray* arrayOfBools; // array of 240 NSNumbers, each made with [NSNumber numberWithBool:NO];
sonra
[[NSUserDefaults standardUserDefaults] setObject:arrayOfBools forKey:@"MyNameForThe240"];
Onları Al:
NSArray* savedBools = [[[NSUserDefaults standardUserDefaults] objectForKey:"MyNameForThe240"];
Bir değişken dizide onları istiyorum olasılıkla:
NSMutableArray* the240ThatCanBeEdited = [NSMutableArray arrayWithArray:savedBools];
Sonra çıkın üzerinde, onları dışarı kaydetmek
[[NSUserDefaults standardUserDefaults] setObject:the240ThatCanBeEdited forKey:@"MyNameForThe240"];













