objective-c - #define 指令说明

标签 objective-c ios cocoa-touch

抱歉,如果这是一个不好的问题,但是。 . .

我想为我的 UIColor 创建一个看起来像这样的快捷方式

[UIColor colorWithRed:(88.0f/255.0f) green:(201.0f/255.0f) blue:(234.0f/255.0f) alpha:1]

我可以以某种方式使用#define,以便我可以输入一些快捷方式吗?我试过了,但我认为我的符号可能是 off 。 . .

如果 #define 仅用于常量或由于某种原因不适用于这种情况,是否有其他方法可以简化该方法?

谢谢!

最佳答案

#define 只是一个美化的文本替换系统。如果你定义这样的东西:

#define key value

那么预处理器将替换每一次出现的keyvalue甚至在编译器可以做任何事情之前。所以你定义什么并不重要。你可以使用任何东西作为你的值(value),所以你可以做类似的事情
#define kMyColor [UIColor colorWithRed:(88.0f/255.0f) green:(201.0f/255.0f) blue:(234.0f/255.0f) alpha:1]

但在这种情况下,您可能应该使用静态常量变量:
static const UIColor *myColor = [UIColor colorWithRed:(88.0f/255.0f) green:(201.0f/255.0f) blue:(234.0f/255.0f) alpha:1];

关于objective-c - #define 指令说明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10640333/

相关文章:

ios - 如何在iOS中使用原始数据播放音频?

cocoa-touch - NSXML解析器: how do I wait until loading has finished?

ios - 如何从url下载视频并将其保存到iOS中的文档目录?

iphone - 初始化后更改 NSMutableURLRequest 的 url

ios - 调整 UILabel 内的文本

ios - 可以编辑滑动以删除(在 UITableView 中)默认文本或翻译它吗?

objective-c - 找出iOS中货币的小数位数

带有预加载图像的 iOS 应用程序

iphone - UITextField 使文本加粗?

ios - [UIThreadSafeNode createPeripheral] : unrecognized selector sent to instance