Я хочу сделать что-то вроде
int ItemNames;
typedef enum ItemNames {apple, club, vial} ItemNames;
+(BOOL)GetInventoryItems{return ItemNames;}
apple=1; //Compiler Error.
Проблема в том, что я не могу установить переменную в перечислении на новое значение. Компилятор говорит мне, что я «объявил» целое число в перечислении. Кроме того, он не будет правильно возвращать значения.
Поэтому вместо этого я должен использовать оператор if для каждого элемента, чтобы проверить, существует ли он следующим образом.
+ (void)GetInventoryItems
{
if (apple <= 1){NSLog(@"Player has apple");}
if (club <= 1){ NSLog(@"Player has club");}
if (vial <= 1){NSLog(@"Player has vial");}
if (apple == 0 && club == 0 && vial == 0){NSLog(@"Player's Inventory is Empty.");}
}
Есть ли обходной путь?