2012-08-05 38 views
1

我有一個方法有兩個參數。其中之一是Object。當我想打電話給他們它給了我這個錯誤:調用方法使得錯誤

reciver型「MyView的」,例如信息不聲明選擇的方法「findCp ::」

這裏是我的方法的代碼我做到了少

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

這裏ComponentNSObject類obj是它的一個對象。 我呼籲這樣我的方法:

convertedTemp = [[self findCp:tempreture :Degree]doubleValue]; 

在實際代碼它使溫度的一些變化,並給它回來。 也myView.h我把

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

爲什麼我得到這個錯誤?我打電話給我的方法錯了嗎?我的定義有誤嗎?

回答

3

是的,你只是以一種錯誤的方式調用該方法。其簽名是findCp:obj:而不是findCp::。 您的實際通話應該是:

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

PS。另外請注意,Objc中的ivar名稱通常以起始小寫字母命名,而類名稱以大寫字母命名(按慣例)。

+0

你是對的。我應該刪除'doubleValue'部分,並在對象前面加上名字'obj'。謝謝 – nfarshchi 2012-08-05 10:48:40