我一直致力于一个小项目,只是为了增加我对Objective-c语法和功能的理解,但我陷入了自己的项目中,无法找到答案。
首先,我有两个类,在我的主要类中,我声明了另一个类的对象,所以我可以使用其他类中的函数。这就是我做的方式(我刚刚写了我认为必要的东西:
.h of my main class
import myOtherClass
@interface PkmViewController : UIViewController
@property Pokemon * nomDePokemon;
.m of my main class
import myOtherClass
@synthesize nomDePokemon;
int nbDef = [nomDePokemon calculerUnNombrePourLaDefense];
.h of my other class
@interface Pokemon : NSObject
@property int defencePoints;
-(int)calculerUnNombrePourLaDefense;
.m of my other class
@synthesize defencePoints;
-(int)calculerUnNombrePourLaDefense
{
int nombrerandom = arc4random() % 45;
return nombrerandom;
}
当我在我的主类中设置断点以查看从该函数中获取的数字时,它总是给我0.当我将此部分放在我的其他类中时它可以工作但是我想将它保留在另一个类中提高我的技能。有人可以解释一下如何做到这一点吗?
答案 0 :(得分:1)
听起来你实际上没有为你的nomDePokemon
变量分配一个口袋妖怪的实例。这意味着变量包含nil
而不是Pokemon对象,它会返回nil
或0
以响应您发送的任何消息。要解决这个问题,请创建一个宠物小精灵。