Kodumda, paketlerde bir simge olarak kodlanmış öğelerin metin adlarıyla çalışmak istiyorum.Anahtar nasıl kullanılır?
Her zamanki durumda, 1012
, cat, dog, cat, frog
benim için anlamındadır, ancak bunun gibi birçok çift daha vardır, bu yüzden hepsini hatırlamak zor. Bazen değiştirilmeleri gerekiyor, bu yüzden bu amaçla bir Dictionary<string, int>
kullanmam gerektiğini düşündüm. Ama sonra ...
switch (symbol)
{
case "0": { /* ... */ }
case "1": { /* ... */ }
case "2": { /* ... */ }
case "n": { /* ... */ }
}
... ...
switch (symbol)
{
case kvpDic["cat"]: { /* ... */ }
case kvpDic["dog"]: { /* ... */ }
case kvpDic["frog"]: { /* ... */ }
case kvpDic["something else"]: { /* ... */ }
}
olur ve stüdyo benim anahtarı için sabitleri kullanmak gerektiğini söylüyor.
Nasıl çalışır?
Upd: örneğin hayvan ve değer çifti sayısı sadece zamanında bilinen, bu nedenle kod sabitleri (herhalde) kullanmak gerekir.
Anahtar bloklarında neler yapıyorsunuz? Temel olarak * sabit olmayan değerleri açamazsınız, bu yüzden * bazı * alternatifleri düşünmeniz gerekir. Çeşitli seçenekler var, ancak daha fazla bilgiye ihtiyacımız var. –
Bunun yerine bir "enum" kullanmayı düşündünüz mü? Veya değerler çalışma zamanında mı değişiyor? –
Texture2D'yi yeni bir hareketli grafiğe atarım ve her durum için benzersizdir. – user1306322