iOS: {}在OC中的几种常用写法

1、 在switch中的写法, 用来确定变量的作用域

NSInteger num = 0;
switch (num) {
    case 0:
    {
        // {} 用来限定 局部变量name 的作用域
        NSString *name = @"王五";
        NSLog(@"%@", name);
    }
        break;
    case 1:
    {
        // 此处无法使用上面的name
        NSString *mName = name;
    }
        break;
    default:
        break;
}

2、 限定相同变量名的作用域

- (void)viewDidLoad {
    [super viewDidLoad];
    
    UILabel *label = [[UILabel alloc] init];
    label.text = @"Hello World!";
    [self.view addSubview:label];
    
    {
        UILabel *label = [[UILabel alloc] init];
        label.text = @"Hello World!";
        [self.view addSubview:label];
    }
}

3、创建控件的一种方法, 老项目或许有, 新项目基本没人用

- (void)viewDidLoad {
    [super viewDidLoad];
    UILabel *label = ({
        UILabel *l = [[UILabel alloc] init];
        l.text = @"Hello World!";
        l;
    });
    [self.view addSubview:label];
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容