从另一个类获取整数值

我知道我以前做过这个,但我不记得怎么做。

我有一个整数,我希望能够在另一个类中改变。

我该怎么做?

MainViewClass : UIViewController { int score; } #import "MainViewClass.h" OtherClass : MainViewClass{ } 

然后在OtherClass的.m我想能够使用variables分数。

我该怎么做呢?

我已经在互联网上search,并尝试了几件事情,试图得到它的工作将不会成功。

感谢您的期待! 祝你有美好的一天。

在你的MainViewClass.h中,你需要添加你的int作为这个类的一个属性。

 @property (nonatomic, readwrite) int score; 

然后在你的MainViewClass.m中,你需要使用下面的属性来综合属性:

 @synthesize score; 

现在,因为你的子类MainViewClass在你的OtherClass中,你可以使用下面的一些组合来访问它的属性。

在你的OtherClass.h中添加

MainViewClass * mainViewClass;

在你的OtherClass.m任何你需要访问分数的地方,你应该可以像访问它一样。

 mainViewClass = (MainViewClass *) self.parent; 

然后将得分使用,

 mainViewClass.score; 

在你的例子中, int score是一个实例variables ,简称为ivar 。 这是与任何给定的MainViewClass实例关联的一段数据。 默认情况下,出于很好的理由,实例variables具有@protected可见性,这意味着只有MainViewClass及其子类可以访问它。

现在,在您的示例中,您将OtherClass作为MainViewClass的子类,这意味着只需键入scoretheOtherObject->score来从同一对象获取self->score ,而从另一个作为MainViewClass对象中只需键入theOtherObject->score 。 (这种devise暴露了实现的细节 ,所以通常被许多编程人员认为是不好的devise,但是对于这样一个简单的用例,你可能会忽略它。 为什么这么糟糕的讨论已经肆虐了几十年 ,是超出了这个问题的范围。)

您可以使用整数在类中创buildgetter和setter方法(或具有合成访问器的属性),并为其他类提供对第一个类的某个实例的引用,并使用这些访问器来获取和设置整数。