2012-08-14 62 views
10

我初始化的對象,像這樣:iOS的錯誤:「項目」無可見@interface聲明選擇「頁頭」

Project *Project = [[Project alloc] init]; 

下面是該項目類的代碼:

項目。^h

#import <Foundation/Foundation.h> 

@interface Project : NSObject 
{ 

} 

    @property (nonatomic,assign) int projectID; 
    @property (nonatomic,strong) NSString *name; 

@end 

Project.m

#import "Project.h" 

@implementation Project 

    @synthesize projectID, name; 

@end 

,我發現了錯誤No visible @interface for 'Project' declares the selector 'alloc'當我嘗試初始化的對象。我該如何解決這個問題?

回答

31

您似乎試圖調用一個與班級名稱完全相同的變量:Project *Project。難怪編譯器感到困惑!

將變量名稱切換爲小寫,Project *project

+9

我真是個白癡...:P – 2012-08-14 09:22:11

+1

偏偏每個人至少一次......至少......對於我的緣故,我希望它:d – 2013-05-29 14:48:55

+0

哈哈哈......我感覺很好,我不是唯一一個:D – CSawy 2014-08-12 21:58:02

4

切勿將類名稱用作實例引用名稱。

GoddamnClass *GoddamnClass = [GoddamnClass new]; // will have problems 

GoddamnClass *anInstanceOfGoddamnClass = [GoddamnClass new]; // works like a magic 
相關問題