具有多參數的方法
如果要同時設定分子分母的方法名稱應該為
用法如下:
好的方法名稱對於程式的可讀性非常重要喔!
於介面檔 Fraction.h
setNumerator : andDenominator :只要在定義方法時在每一個參數後面加上『:』表示將接受冒號之後的參數。
用法如下:
[ myFraction setNumerator : 1 andDenominator : 3 ];這樣的命名雖然不錯,但名稱太長,我們可以改短增加其可讀性:
[ myFraction setTo : 1 over : 3 ];兩種方式都可以,可依個人喜好命名!
好的方法名稱對於程式的可讀性非常重要喔!
範例:
- (介面檔宣告 setTo:over 方法)
於介面檔 Fraction.h
- #import <Foundation/Foundation.h>
- @interface Fraction : NSObject
- @property int numerator, denominator;
- -(void) print;
- -(void) setTo: (int) n over: (int) d;
- -(double) convertToNum;
- @end
- (加入新增 setTo:over: 方法的定義於實作檔)
於實作檔 Fraction.m
- #import "Fraction.h"
- @implementation Fraction
- @synthesize numerator, denominator;
- -(void) print
- {
- NSLog(@"%i/%i", numerator, denominator);
- }
- -(double) convertToNum
- {
- if (denominator != 0)
- return (double) numerator / denominator;
- else
- return NAN;
- }
- -(void) setTo:(int)n over:(int)d
- {
- numerator = n;
- denominator = d; //指定 n 和 d 兩個整數參數給對應的實體變數
- }
- @end
- (最後測試看看我的新方法)
於 main.m
- int main(int argc, const char * argv[])
- {
- @autoreleasepool {
- Fraction *aFraction = [Fraction new];
- [aFraction setTo:100 over:200];
- [aFraction print];
- //set fraction to 1/3
- [aFraction setTo:1 over:3];
- [aFraction print];
- }
- return 0;
- }
- (輸出)
100/2001/3
留言
張貼留言