gpt4 book ai didi

使用枚举的 iPhone switch 语句

转载 作者:太空狗 更新时间:2023-10-30 03:46:57 27 4
gpt4 key购买 nike

我在一个类的头文件中定义了一个枚举:

typedef enum{
RED = 0,
BLUE,
Green
} Colors;

- (void) switchTest:(Colors)testColor;

在我的实现文件中:

- (void) switchTest:(Colors)testColor{

if(testColor == RED){
NSLog(@"Red selected");
}

switch(testColor){
case RED:
NSLog(@"Red selected again !");
break;
default:
NSLog(@"default selected");
break;
}

}

我的代码编译正确,没有警告。使用 RED 调用 switchTest 方法时,输出为:“红色选择”

但是一旦开关的第一行运行,应用程序就会意外退出并且没有警告/错误。

我不介意使用 if/else 语法,但我想了解我的错误。

最佳答案

对我来说很好:

typedef enum{
RED = 0,
BLUE,
Green
} Colors;

@interface Test : NSObject

- (void) switchTest:(Colors)testColor;
@end

@implementation Test

- (void) switchTest:(Colors)testColor {
if(testColor == RED) {
NSLog(@"Red selected");
}

switch(testColor){
case RED:
NSLog(@"Red selected again !");
break;
default:
NSLog(@"default selected");
break;
}
}
@end


int main (int argc, const char * argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];

Test *myTest = [[Test alloc] init];

[myTest switchTest:RED];

[myTest switchTest:RED];

[pool drain];
return 0;
}

关于使用枚举的 iPhone switch 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2960241/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com