最近写代码用Switch case语句的时候,老是被case后面不能直接创建对象的问题困扰,在网上搜索了一下,找到了答案,现在整理一下!
方法一:在case后面加花括号 示例代码如下
case 2: {
UIImageView *imageView = [[UIImageView alloc] init];
//......
}
break;
方法二:在case后面加分号
case 3: {
; //后面进行对象的创建
UIImageView *imageView = [[UIImageView alloc] init];
//......
}
break;
推荐第一种方法,第二种方法可以衍生出各种版本:你可以将分号换成任何一个可执行的代码,比如NSlog点什么东西。
也就是说case后面要想创建对象,必须在创建对象之前做点什么,至于是为什么,我也在继续找答案,如果找到,会在这里进行完善!