#import <Foundation/Foundation.h>
@interface Fraction : NSObject {
인스턴스 변수를 설정
int numerator, denominator;
}
프로퍼티설정
@property int numerator, denominator;
-(void) print;
-(void) setTo:(int) n over:(int) d;
-(double) operation;
-(void) add:(Fraction *) f;
@end
아래는 Fraction.m의 구현파일 내용이다.
#import "Fraction.h"
@implementation Fraction
@synthesize numerator,denominator;
-(void) print
{
NSLog(@"%i/%i",numerator, denominator);
}
-(void) setTo:(int) n over:(int) d
{
numerator = n;
denominator = d;
}
-(double) operation
{
if( denominator != 0 ){
return (double) numerator/denominator;
}else{
return 1.0;
}
}
-(void) add:(Fraction *) f
{
//두 분수를 더하기
//a/b + c/d = ((a*d)+(b*c))/(b*d)
property에 dot notation으로 접근
numerator = (numerator * f.denominator) + (denominator * f.numerator);
denominator = denominator * [f denominator];
}
@end