我在 Objective C 中有两个使用 cocos2D 的主要类,DebugZoneLayer 和 HeroClass。使用 Cocos2D 可能不是问题的一部分。
HeroClass 包含一个 CGPoint 和一个属性。我在 DebugZoneLayer 中有一个 HeroClass 的实例,初始化为hero = [[HeroClass alloc] init];
缩短了我的 HeroClass.h 以向您展示我如何创建 CGPoint vel。
@interface HeroClass : CCLayer {
@public CGPoint _vel;
}
@property(assign) CGPoint vel;
在 HeroClass.m 中,我合成了我的属性,例如@synthesize vel = _vel;
在 DebugZoneLayer.m 中,我可以很好地引用我的 hero.vel x 或 y,但是任何为 hero.vel x 或 y 赋值的东西都会返回错误:Lvalue required as left operand of assignment