将值输入到define方法中

时间:2014-01-16 06:37:06

标签: objective-c macros

在下面找到令人困惑的定义方法

#define SELF_PASSWORD @"0"
#define SELF_DROPBOX @"1"
#define SELF_ABOUT @"2"

#define SELF_TABLE_TITLE_PASSWORD @"Password"
#define SELF_TABLE_TITLE_DROPBOX @"Dropbox"
#define SELF_TABLE_TITLE_ABOUT @"About"

#define SELF_TABLE_HEADER_TITLE(SECTION) = SECTION==SELF_PASSWORD?    SELF_TABLE_TITLE_PASSWORD:SECTION==SELF_DROPBOX?SELF_TABLE_TITLE_DROPBOX:SELF_TABLE_TITLE_ABOUT
-(void)buttonActionPassword:(UIButton *){
    NSLog(@“Title : %@”, SELF_TABLE_HEADER_TITLE(SELF_PASSWORD));
}

-(void)buttonActionAbout:(UIButton *){
    NSLog(@“Title : %@”, SELF_TABLE_HEADER_TITLE(SELF_ABOUT));
}

我们可以使用 SELF_TABLE_HEADER_TITLE(SELF_PASSWORD) 方法吗? Xcode错误说'预期表达'是什么问题?

1 个答案:

答案 0 :(得分:1)

问题已解决,

#define SELF_TABLE_HEADER_TITLE(key)[key isEqual:SELF_PASSWORD]?SELF_TABLE_TITLE_PASSWORD:[key isEqual:SELF_DROPBOX]?SELF_TABLE_TITLE_DROPBOX:SELF_TABLE_TITLE_ABOUT;

== ”不起作用。使用 isEqual 功能。