1

我有两个班级:MainClassSecondClass。我已经导入SecondClass.HMainClass.m使用其中的一些方法。我可以调用具有双类型输入的方法,但我不能(或不知道如何)调用没有(或 void 类型)输入的方法。我可以通过命令调用 double 类型的方法:[self.second someMethod2: type double];我尝试通过使用调用 void 输入法:[self.second someMethod1];但这不起作用。

我在不同的类中有这两种方法。

-(void)pushOperand:(double)operand {

NSNumber *operandObject = [NSNumber numberWithDouble:operand];

[self.operandStack addObject:operandObject];

}

-(双)popOperand {

NSNumber *operandObject = [self.operandStack lastObject];
if( operandObject ) [self.operandStack removeLastObject];
return [operandObject doubleValue];

}

我可以使用第一种方法

[self.brain pushOperand:[self.display.text doubleValue]];

但是xcode甚至找不到第二种方法。我试过了

[self.brain popOperand];, [self.brain popOperand];, ...

4

1 回答 1

2

假设您有两个类,ClassA 和 ClassB。

重要说明,在 ClassA 的接口文件中 takeNothingAndReturnNothing 必须声明为原型, -(void)takeNothingAndReturnNothing;这样它才能成为公共的

ClassA您有一个名为的实例方法takeNothingAndReturnNothing(名称显示该方法是无效的)并且方法声明如下所示

-(void)takeNothingAndReturnNothing{
   NSLog("this is %s from ClassA",  __FUNCTION__);
}

ClassB(导入后ClassA)首先创建一个对象,ClassA然后调用它的实例方法,如下所示。

ClassA *theObject=[[ClassA alloc]init];
[theObject takeNothingAndReturnNothing];
于 2012-08-03T07:12:33.023 回答