gpt4 book ai didi

objective-c - 在 Objective-C 中,如何使变量可以从多个类访问

转载 作者:行者123 更新时间:2023-12-03 18:03:21 25 4
gpt4 key购买 nike

在 iPhone 的 cocos2d 中我有两个类:

1- GameScene.h 类

2- Player.h 类

GameScene.h 声明了这个标签 ScoreLabel2,如下

   @interface GameScene : CCLayer {
Player* player;
CCLabel* scoreLabel2;

player.h 类具有以下方法

 -(void)updateScore{
NSLog(@"%@",scoreLabel2);
}

我收到此错误

          error: 'scoreLabel2' undeclared (first use in this function)

由于我需要在类之间使用许多对象和变量,因此该问题的最佳解决方案是什么?

非常感谢

最佳答案

艾哈迈德,

您需要在场景中有一个 updateScore 方法,然后从玩家类中调用此方法。我会推荐这样的东西:

@interface GameScene : CCLayer {
Player* player;
CCLabel* scoreLabel2;
NSInteger score;
...
}
...
- (void) updateScoreByAmount:(NSInteger)scoreModifier;

在 .m 中你会得到类似的东西:

- (void) updateScoreByAmount:(NSInteger)scoreModifier
{
score += scoreModifier; // scoreModifier can be positive or negative
}

然后在您的玩家类中,当您想要更改分数时,您可以在场景中调用此方法。

[myScene updateScoreByAmount:5];

这需要修改以适合您的情况,但类似的东西正是您正在寻找的。

关于objective-c - 在 Objective-C 中,如何使变量可以从多个类访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4338012/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com