Anyone know why I am getting warnings on the following? The error seems to be coming from Fraction.M. I get two warning:
1. incomplete implemenation of class 'Fraction'
2. method definition for '-initwithNumerator:denominator:' not found.
Please help!
FRACTION.H
FRACTION.M
MAIN.M
1. incomplete implemenation of class 'Fraction'
2. method definition for '-initwithNumerator:denominator:' not found.
Please help!
FRACTION.H
Code:
#import <Foundation/NSObject.h>
@interface Fraction: NSObject {
int numerator;
int denominator;
}
-(void) print;
-(Fraction*) initwithNumerator: (int) n denominator: (int) d;
-(void) setNumerator: (int) n andDenominator: (int) d;
-(int) numerator;
-(int) denominator;
@end
FRACTION.M
Code:
#import "Fraction.h"
#import <stdio.h>
@implementation Fraction
-(void) print {
printf( "%i/%i", numerator, denominator );
}
-(Fraction*) initWithNumerator: (int) n denominator: (int) d {
self = [super init];
if ( self ) {
[self setNumerator: n andDenominator: d];
}
return self;
}
-(void) setNumerator: (int) n andDenominator: (int) d {
numerator = n;
denominator = d;
}
//-(void) setNumerator: (int) n {
// numerator = n;
//}
//-(void) setDenominator: (int) d {
// denominator = d;
//}
-(int) numerator {
return numerator;
}
-(int) denominator {
return denominator;
}
@end
MAIN.M
Code:
#import <stdio.h>
#import "Fraction.h"
int main( int argc, const char *argv[] ) {
// create a new instance
Fraction *frac = [[Fraction alloc] initwithNumerator: 3 denominator: 7];
// print it
printf( "The fraction is: " );
[frac print];
printf( "\n" );
// free memory
[frac release];
return 0;
}