2013-10-11 51 views
0

有一天,我在Xcode中發現了一個問題。 我使用了一個宏,我想要的任何地方,問題是我沒有導入一個.h文件宏定義的地方,實際上我可以正常使用這個宏。 有人能幫助我嗎?如何使用宏而不導入Xcode中的.h文件

+0

簡要你的問題 – SSP

+0

你試圖解決什麼問題?循環進口?然後使用['@ class'](http://stackoverflow.com/questions/5191487/objective-c-forward-class-declaration)。或者你想保存打字工作嗎?然後查找[預編譯頭文件](http://stackoverflow.com/questions/6707590/is-there-a-place-to-put-a-category-import-statement-so-all-classes-see-it/6707627#6707627) –

+0

謝謝@MatthiasBauch – suydea

回答

0

導入到項目中的預編譯頭文件*.pch,這樣它將自動導入到任何實現文件。請參閱here

+0

儘管最好不要惹到.pch文件,除非你在90%的控制器中需要這個宏)。 –

0

定義裏面的任何宏<your project>.pch將自動適用於整個應用程序。您可以在項目目錄中的Supporting Files中找到這個自動生成的文件。

.pch文件,你應該申報所有的(如果你不使用在大多數viewcontrollers的這些變量不推薦)常數,並且使用的是整個應用程序的宏,在大多數的viewControllers

例如:

// frameworks 
#import <UIKit/UIKit.h> 
#import <Foundation/Foundation.h> 

// a category 
#import "UIColor+custom.h" 

// a class 
#import "aClass.h" 

// a macro 
#define kAppFont @"TrebuchetMS" 

// a global object 
NSInteger myInteger; 

// a macro with case 
#define IS_IPHONE_5 (fabs((double)[ [ UIScreen mainScreen ] bounds ].size.height - (double)568) < DBL_EPSILON) 
相關問題