似乎幾乎是this question的副本,但答案並沒有解決問題。extern導致鏈接器錯誤
first.h
extern PlanningDocumentService *folderService;
first.m
#import first.h
- (void)serviceDefinition
{
PlanningDocumentService *folderService = [_myDocumentViews objectAtIndex:[_gridView indexOfSelectedItem]];
detail.service = folderService;
}
second.h
#import first.h
second.m
#import second.h
+(NSArray*)getDocumentData
{
NSString *passedCaption = folderService.caption;
}
給出了錯誤:
Undefined symbols for architecture i386:
"_folderService", referenced from:
+[GenericService getDocumentData] in GenericService.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我沒有聲明或定義除上述文件以外的任何地方folderService
。 歡迎任何想法。
其中是folderService創建?你只是把外部,但你實際上必須創建變種 – Ultrakorne 2013-02-15 15:22:45