oc中遇到的特殊语法

lvpw 发布于 2014年09月01日
无人欣赏。

self.tableView = ({ UITableView *tableView = [[UITableView alloc] init]; tableview; }); 这是什么语法?

共11条回复
lvpw 回复于 2014年09月01日

没人会吗?

Archfeed 回复于 2014年09月02日

问具体点呢 ?

tinyfool 回复于 2014年09月02日

你在哪里看到的语法?

lvpw 回复于 2014年09月02日

3楼 @tinyfool 我也忘了,很像内联函数,最后一句是返回值,我就记得这么多,想了解下这中东西有什么其他作用

千厮门 回复于 2014年09月02日

老C语言的风格,可以提高一点点执行效率。不推荐。

vczh 回复于 2014年09月02日

4楼 @lvpw 这一开始是gcc的扩展,不是什么内联函数,只是用来给你节省几个语句用的,举个例子: Fuck(123, ({int a=0; for( .. )a+=i; a;}), 456); 的意思就是说 int x = 456; int a = 0; for ( ... ) a+=i; int y = a; int z = 123; Fuck(z, y, x);

vczh 回复于 2014年09月02日

@tinyfool 用```装起来的多行代码不能换行是怎么回事,赶快改

tinyfool 回复于 2014年09月02日

7楼 @vczh 那是这里的单行代码标记,编辑器工具栏的101010才是多行代码

ljb_iss 回复于 2014年09月02日

推荐看一下这个博文 "objc非主流代码技巧"link text 的 [C]小括号内联复合表达式

这种语法就像屠龙刀,杀个鸡就别用了。

lvpw 回复于 2014年09月02日

非常感谢三位!!

3楼 @tinyfool

6楼 @vczh

9楼 @ljb_iss

lvpw 回复于 2014年09月02日

5楼 @千厮门 也非常感谢您!

本帖有11个回复,因为您没有注册或者登录本站,所以,只能看到本帖的10条回复。如果想看到全部回复,请注册或者登录本站。

登录 或者 注册
[顶 楼]
|
|
[底 楼]
|
|
[首 页]