2011-09-08 61 views
0

我的項目有兩個目標:一個是應用程序,另一個是UT.I'd想根據目標返回不同的結果。
我跟着這link但失敗。xcode4:根據目標構建

我都嘗試:

  1. 我用TARGET_NAME。我在項目設置中將OTHER_CFLAGS設置爲包含-DTARGET_NAME=${TARGET_NAME}。然後在代碼:

NSString *returnStr = nil; 
#if TARGET_NAME == PhotoAPI 
    returnStr = [NSString stringWithFormat:@"%@\'%@\');",EventFunStr,dataStr]; 
#elif TARGET_NAME == LogicTest 
    returnStr = [NSString stringWithFormat:@"%@", dataStr]; 
#endif 
return returnStr; 

但是似乎TARGET_NAME == PhotoAPI始終是真實的。
2.我也使用Preprocessor Macros,我爲應用程序目標設置了APP,爲UT設置了UT。並在代碼中:


NSString *returnStr = nil; 
#ifdef APP 
    returnStr = [NSString stringWithFormat:@"%@\'%@\');",EventFunStr,dataStr]; 
#elsedef UT 
    returnStr = [NSString stringWithFormat:@"%@", dataStr]; 
#else 
    returnStr = nil; 
#endif 
return returnStr; 

它總是返回nil。我使用LLVM GCC 4.2

任何人都可以幫助我嗎?

回答