【问题标题】:xcode unknown type namexcode 未知类型名称
【发布时间】:2011-10-26 00:00:31
【问题描述】:

我得到了这样的代码:

Match.h:

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

@interface Match : NSObject
{
    Player *firstPlayer;
}

@property (nonatomic, retain) Player *firstPlayer;

@end

播放器.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

游戏.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

当我声明 *firstPlayer 时,Xcode 不会编译我的项目并向我显示 Match.h 中的错误 unknown type 'Player'。

我尝试清理项目,重建它但没有任何结果......

【问题讨论】:

标签: iphone objective-c ios


【解决方案1】:

解决这个循环的正常方法是转发声明类:

在 Match.h 中:

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

并且只在 Match.m 中执行 #import "Player.h,在 Match.h 中执行 not

其他两个 .h 文件也是如此。

【讨论】:

  • 非常感谢,即使有时小问题需要很长时间才能解决,这可能是在软件领域工作时失去记忆力..
  • 干杯!一段时间以来一直在寻找这个解决方案。 +1
猜你喜欢
  • 2012-10-28
  • 1970-01-01
  • 2013-06-26
  • 1970-01-01
  • 2017-04-30
  • 1970-01-01
  • 2011-12-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多