2012-05-04 21 views
9

Merhaba :) NSStrings'in statik bir C-Dizisi oluşturmaya çalışıyorum. Objective-C statik satır içi NSString dizisi

Bu

denedim budur:

static NSString** polygonNames = {@"Radical Isotope", @"Point", @"Line", @"Triangle", @"Square", @"Pentagon", @"Hextagon", @"Heptagon", @"Octagon", @"Nonagon", @"Decagon", @"Hendecagon", @"Dodecagon", @"Tridecagon", @"Tetradecagon", @"Pentadecagon", @"Hexadecagon", @"Heptadecagon", @"Octadecagon", @"Enneadecagon"}; 

yok derleyici hatalarını ama şu üçünden birini bunların tümü 41 uyarılar, alıyorum: beni inandıramaz

"warning: initialization from incompatible pointer type" 
"warning: excess elements in scalar initializer" 
"warning: (near initialization for 'polygonNames')" 

Bu sınıfı kullandığımda, bol miktarda sigbarts veya başka bir bellek erişim hatasıyla sunulacağım ...

NSStrings statik dizisini başlatmak için uygun yol hangisidir (tercihen satır içi ve ben NSArrays değil, C-dizileri kullanmak istiyorum)?

cevap

29

bu deneyin:

static NSString *polygonNames[] = { @"Radical Isotope", @"Point", @"Line", /* etc */ }; 
+1

Ahh teşekkür ederim. Programlama paradigma sınıfına çok alışkınım, void * 'i int ** vs' ye çevirmek zorundayım ... –

+0

Artık uyarı vermiyoruz, teşekkürler! : D –