CAGradientLayer *grad = [CAGradientLayer layer];
grad.colors = $array(ColRGBA2(1, 0, 0, 1), ColRGBA2(0, 1, 0, 1), ColRGBA2(0, 0, 1, 1), ColRGBA2(0, 0, 0, 0));
grad.startPoint = CGPointMake(0, 0);
grad.endPoint = CGPointMake(1, 0);
grad.colors = $array(ColRGBA2(1, 0, 0, 1), ColRGBA2(0, 1, 0, 1), ColRGBA2(0, 0, 1, 1), ColRGBA2(0, 0, 0, 0));
在这句话中有一个美元符号是什么意思?关于它的任何链接?
答案 0 :(得分:12)
这不是该语言的一个功能,这些是一些人使用的集合的便利初始化器。例如:
$array(foo, bar, baz)
扩展为:
[NSArray arrayWithObjects:foo, bar, baz, nil]
我不确定这是不值得的。我没有链接到提供这些宏的库,也许还有其他人呢?
顺便说一句,看起来我们将在Xcode 4.4中为数组,字典和其他一些对象提供官方文字。目前细节似乎在NDA下,但有一些discussion at Hacker News。
答案 1 :(得分:2)
来自ConciseKit库