2012-10-25 62 views
0

這裏是董事會成員,我的頭文件:編譯器不會承認我的自定義類

#import "Game.h" 
#import <Foundation/Foundation.h> 

@interface Board : UIView 
{ 
    enum Piece; 
} 

- (void) setGame: (Game*) theGame; //<-- this is where the error is 
typedef enum {X, O, NONE} Piece; 
- (float)getSection; 
@end 

編譯器說「預期類型」和具有(遊戲*)下劃線。這裏有什麼問題?


Game.h:

#import <Foundation/Foundation.h> 
#import "Board.h" 

@interface Game : UIViewController 

- (void)boardwasTapped:(int) row:(int) column; 

@end 
+1

看起來'Game'沒有在'Game.h'中聲明。你可以顯示該代碼嗎? –

+1

或者也許Game.h包含Board.h,所以有沒有前向聲明的循環引用。你應該讓我們看看Game.h. – Jack

+0

@CarlNorum查看更新 – John

回答

1

不導入你的頭,但前申報。在Board.m中導入遊戲標題

@class Game; 

@interface Board : UIView { 
... 
} 
... 
@end 

另外,你確定問題不在於你的枚舉嗎?在聲明它之前,您正在使用它。你應該在@interface塊之上(外部)聲明它。

1

董事會進口遊戲,和遊戲進口董事會。所以你需要在遊戲中轉發類遊戲

@Class Game