Подтвердить что ты не робот

Имя неизвестного типа xcode

Я получил код вроде этого:

Match.h:

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

@interface Match : NSObject
{
    Player *firstPlayer;
}

@property (nonatomic, retain) Player *firstPlayer;

@end

Player.h:

#import <Foundation/Foundation.h>
#import "game.h"
@interface Player : NSObject
{
}

- (Player *) init;

//- (NSInteger)numberOfPoints;
//- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil;


@property (nonatomic, retain) NSString *name;
@property (nonatomic, retain) NSString *surname;
@property (nonatomic, assign) NSInteger *player_id;
@property (nonatomic, retain) NSString *notes;

@end

Game.h:

#import <Foundation/Foundation.h>
#import "match.h"
#import "player.h"

@interface Game : NSObject
{
    NSMutableArray *matches;
    NSMutableArray *players;
    NSString *name;
}

-(Game *) init;

@property (nonatomic, retain) NSMutableArray *matches;
@property (nonatomic, retain) NSMutableArray *players;
@property (nonatomic, retain) NSString *name;

@end

Xcode не будет компилировать мой проект и показать мне ошибку неизвестного типа 'Player' в Match.h, когда я объявляю * firstPlayer.

Я пробовал очистить проект, перестраивая его, но без какого-либо результата...

4b9b3361

Ответ 1

Обычный способ решения этих циклов - переслать классы объявления:

В Match.h:

@class Player;
@interface Match ...
    Player * firstPlayer;

и do #import "Player.h только в Match.m, not в Match.h

То же самое для двух других файлов .h.