美文网首页UIiOSiOS开发技巧
Object-C简写语法(跳槽必备)

Object-C简写语法(跳槽必备)

作者: Hardway | 来源:发表于2015-10-25 01:14 被阅读1691次

    作为一个有着强迫症的程序猿,喜欢精简干练通熟易懂的代码,so自己总结了一下OC中简写的语法,欢迎补充。

    1.方法声明

    返回值如果不写括号,编译器默认是id类型:
    -sendMessage;
    -(id)sendMessage;//等价于

    参数如果不写类型默认也是id类型
    -(void)sendMessage:msg;
    -(void)sendMessage:(id)msg;//等价于

    有多参数时方法名和参数提示语可以为空
    -(void):msg1 :msg2;
    -(void)sendMessage:(id)msg1 message2:(id)msg2; // 省略前,不建议这样简写,代码可读性降低

    2.结构体

    CGRect rect = {1, 2};
    CGRect rect = {1, 2, 0, 0}; // 等价于

    3.小括号内联复合表达式

    来自Statements and Declarations in Expressions

    RETURN_VALUE_RECEIVER = {( // Do whatever you want RETURN_VALUE; // 返回值 )};

    //so 我们可以引申为以下这种写法: UIView *view = ({ UIView *view = [[UIView alloc] initWithFrame:self.view.bounds]; view.backgroundColor = [UIColor redColor]; view.alpha = 0.8f; view; }); [self.view addSubview:view]; //这样使得代码量增大时层次仍然能比较明确。

    相关文章

      网友评论

      • 6aad842825ee:小括号内联复合表达式这种写法相当于我们平时的什么样的写法?怎么对应起来呢?
      • 6aad842825ee:小括号内联复合表达式 最后返回了一个值,必须返回吗,如果不返回怎么办,这种写法的语法格式是什么?
      • 06eaba79340e:小括号内联复合表达式不错~对于代码手写者来说是福利,可读性增加了~而且还可以装逼

      本文标题:Object-C简写语法(跳槽必备)

      本文链接:https://www.haomeiwen.com/subject/ekzthttx.html