我有两节课。
GameData.h
#import "TeamData.h"
@property (assign, nonatomic) GameData* teamA;
TeamData.h
@interface TeamData : NSObject
@property (nonatomic, copy) NSString* teamName;
-(void) printTeamData;
一些问题:
在GameData.m内部,我有以下代码:
TeamData *团队= self.teamA;
[team printTeamData];
第一行显示此警告:
Incompatible pointer types from TeamData* with an expression of type TeamData*
在另一个类中,我包括GameData.h,我想设置teamA名称。我该如何访问?所以我想从GameData类中获取teamA属性并设置其name属性。
最佳答案
在GameData.h中,您的属性指向其自己的类,而不是TeamData
@property (assign, nonatomic) GameData* teamA;
assign
用于原始类型,例如BOOL或NSInteger。
父类应包含对子对象的strong
引用。
所以你的财产会更好@property (strong, nonatomic) TeamData* teamA;
至于设置teamA属性,您可以在setTeamA:
实例上调用GameData
:
[myGameData setTeamA:...];