目标c在交换机情况下使用NSString

时间:2013-09-10 11:02:46

标签: objective-c string switch-statement case

我想将字符串作为switch case参数传递。怎么做??

我试过像

这样的枚举
typedef enum _KeyPath
{
     KeyPathNone,
     KeyPathRefreshCount,
     KeyPathTimesLaunched,
     KeyPathCount
} KeyPath;

但我不明白如何将此枚举值传递给切换案例。

2 个答案:

答案 0 :(得分:2)

您使用

typedef enum _KeyPath
{
    KeyPathNone = 0,
    KeyPathRefreshCount,
    KeyPathTimesLaunched,
    KeyPathCount
} KeyPath;

现在KeyPathNone为0,KeyPathRefreshCount为1,KeyPathTimesLaunched为2,...

因此,您可以将实际名称作为参数传递给switch语句。

答案 1 :(得分:1)

<Name of enum> <enum object> = "String value you want to pass"

示例:

enum Test{
A,
B
}


Test city = A;

switch (city) {
    case B:
        //print B
    break;

   case A:
       //print A
       break;   
 }