GCC语法

之前看别人源码的时候发现一种奇怪的写法

    self.nameLabel = ({
        UILabel * label = [[UILabel alloc]init];
        [self.view addSubview:label];
        label.font = [UIFont boldSystemFontOfSize:20];
        label.textAlignment = NSTextAlignmentCenter;
        label;
 });

好奇之下网络搜了一波,千篇一律,只有简单的介绍.

  • GCC (Code Block Evaluation C Extension)(以下简称GCC)语法十分优雅,它能够在局部初始UI以及处理逻辑,在团队协作中方便同事快速读懂你的UI布局。
  • 不是GCC编译器或GCC指令。
  • GCC布局UI,能够让代码变得更加干净,更加安全,更加简洁,能够在团队协作中发挥很大的作用。

补充一个三目运算符的优化写法:

NSLog(@"%@", @"a" ?: @"b"); // @"a"
NSLog(@"%@", nil ?: @"b"); // @"b"

你可能感兴趣的:(GCC语法)