Objective c 调用方法会出错

Objective c 调用方法会出错,objective-c,methods,Objective C,Methods,我有一个有两个参数的方法。其中一个是对象。当我想打电话给他们时,会出现以下错误: 实例消息的接收器类型“myView”未声明带有选择器“findCp::”的方法。 这是我的方法的代码,我减少了它 -(double)findCp:(double)temp obj:(Component *)Obj{ return temp; } 这里,Component是一个NSObject类,Obj是它的对象之一。 我这样调用我的方法: convertedTemp = [[self findCp:tem

我有一个有两个参数的方法。其中一个是
对象
。当我想打电话给他们时,会出现以下错误:

实例消息的接收器类型“myView”未声明带有选择器“findCp::”的方法。

这是我的方法的代码,我减少了它

-(double)findCp:(double)temp obj:(Component *)Obj{
    return temp;
}
这里,
Component
是一个
NSObject
类,Obj是它的对象之一。 我这样调用我的方法:

convertedTemp = [[self findCp:tempreture :Degree]doubleValue];
在实际代码中,它会对温度进行一些更改并返回。 也在我的视图中

-(double)findCp:(double)temp obj:(Component *)Obj;

为什么我会犯这个错误?我说我的方法不对吗?我的定义错了吗

是的,您只是以错误的方式调用了该方法。它的签名是
findCp:obj:
,而不是
findCp::
。 您的实际通话应该是:

convertedTemp = [self findCp:tempreture obj:Degree]; // You're returning a double already

另请注意,Objc中的ivar名称通常以小写字母开头,而类名则以大写字母开头(按惯例)。

你说得对。我应该删除
doubleValue
部分,并将名称
obj
放在对象之前。非常感谢。