CGContextSetStrokeColorWithColor UIColor setStroke 有什么区别?

What's the difference between CGContextSetStrokeColorWithColor UIColor setStroke?

这两种设置描边颜色的方式有区别吗?

CGContextSetStrokeColorWithColor(context, [UIColor redColor].CGColor)

[[UIColor redColor] setStroke]

例子

CGContextRef cr = UIGraphicsGetCurrentContext();

CGContextSetStrokeColorWithColor(cr, [UIColor redColor].CGColor);
[[UIColor redColor] setStroke];

UIBezierPath *bp = [UIBezierPath new];

[bp stroke];

UIGraphicsEndImageContext();

一个较长,纯C。另一个较短,使用Objective-C。它们的效果是一样的。