2012-12-29 103 views
0

我在學習目標c。我有xcode 4,並正在閱讀我的初學者手冊,瞭解如何製作iphone應用程序。調用目標方法c

我可以很好地編碼c清晰但c明顯較低的水平,並涉及一點點的內存管理,所以我認爲這就是我在這裏跌倒的地方。

無論如何,我想創建一個返回類型double的方法。在犀利的我會寫這個作爲

public double test() 
{ 
    return 12; 
} 

然後我希望能夠從另一種方法調用我的方法。這是迄今爲止我一直在努力的部分內容。

- (double)test 
{ 
    return 1985; 
} 

- (IBAction)btnConvert_Click:(id)sender 
{ 
    double str = [double test]; 

    NSString *hello = txtAmount.text; 
    double myDouble = [hello doubleValue] * exrate; 
    lblResult.text = [NSString stringWithFormat: @"%.2f", str]; 
} 

它引發了一個錯誤,我嘗試建立double方法str「expected expression」。我想要做的是傳入myDouble來測試,然後做一些計算然後返回值。

我該怎麼做?謝謝。如下圖所示

double str = [self test]; 

回答

2

而不是double str = [double test];你應該寫double str = [self test];,因爲你是在double調用自己的類的方法,而不是

+0

工作。謝謝!只是一個簡單的問題。我如何通過雙重方法測試? – tmutton

+2

' - (double)testWithParameter:(double)param {...}'是你的方法。你可以通過'[self testWithParameter:myDoubleValue];' – Levi

+0

噢,我明白了。我將該方法更改爲 - (double)test:(double)xval並使用test:80 – tmutton

2

使用

+2

@codemonkey:始終堅持可可命名約定,這將使您的代碼可讀。儘可能地使用包裝類。作爲NSInteger,NSNumber而不是int等。 –

+0

謝謝。什麼是可可命名約定? – tmutton

+0

btnConvert_Click應該轉換爲:&str coudld是doubleValue&txtAmount應該是金額。 –

2

你只需要調用[self test]調用你的方法