簡體   English   中英

使用枚舉時,無法使用速記@n類型語法實例化NSNumber嗎?

[英]Can't instantiate NSNumber with shorthand @n type syntax when using enum?

我有一個這樣定義的enum

typedef enum dataTypes{
    LOW,
    MEDIUM,
    HIGH,
    MAX_DATA_TYPE
} dataTypeEnum;

我希望能夠實例化NSNumberNSArray ,如下所示:

NSArray * numsToUse = @[@LOW, @MEDIUM];

這沒有編譯。 有什么見解嗎? 對於每個這些,我是否都必須使用笨拙的[NSNumber numberWithInt:] ,還是有辦法解決? (出於多種原因,我考慮並拒絕了#define語句)。

您只需要使用表達式語法:

NSArray * numsToUse = @[@(LOW), @(MEDIUM)];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM