Saya ingin membuat array statis konstan untuk digunakan di seluruh file implementasi Objective-C saya mirip dengan sesuatu seperti ini di tingkat atas file ".m" saya:
static const int NUM_TYPES = 4;
static int types[NUM_TYPES] = {
1,
2,
3,
4 };
Saya berencana untuk menggunakannya NUM_TYPES
nanti di file jadi saya ingin memasukkannya ke dalam variabel.
Namun, ketika saya melakukan ini, saya mendapatkan kesalahan
"'Jenis' yang dimodifikasi secara bervariasi pada cakupan file"
Saya mengumpulkan bahwa ini mungkin ada hubungannya dengan ukuran array menjadi variabel (saya tidak mendapatkan pesan ini ketika saya meletakkan literal integer di sana, seperti static int types[4]
).
Saya ingin memperbaikinya, tetapi mungkin saya melakukan semuanya dengan salah ... Saya punya 2 tujuan di sini:
- Untuk memiliki sebuah array yang dapat diakses di seluruh file
- Untuk mengenkapsulasi
NUM_TYPES
menjadi variabel sehingga saya tidak memiliki literal yang sama yang tersebar di berbagai tempat di file saya
Ada saran?
[EDIT] Temukan ini di C Faq: http://c-faq.com/ansi/constasconst.html
#define kNUM_TYPES 4
?