直接上代码:
#import <Foundation/Foundation.h>@interface Fraction : NSObject@property int numerator, denominator;-(void)    print;
-(double)  converToNum;
-(void)    setTo : (int) n : (int) d;
@end#import "Fraction.h"@implementation Fraction@synthesize numerator , denominator;-(void) setTo: (int) n : (int) d{
    numerator = n;
    denominator = d;
}-(void) print{
    NSLog(@"%i/%i", numerator ,denominator);
}-(double) convertToNum{
    if(denominator != 0)
        return (double) numerator / denominator;
    else
        return NAN;
}
@end#import "Fraction.h"int main(int argc, char *argv[]){
    @autoreleasepool{
        Fraction *myFraction = [[Fraction alloc] init];
        //[myFraction setNumerator:   2];
        //[myFraction setDenominator: 7];
        [myFraction setTo :1 :2];        NSLog(@"The value of myFraction is:");
        [myFraction print];    }
    return 0;
     
}    求解 !谢谢了 100分奉上

解决方案 »

  1.   

    看了下上面的程序是没有问题定义是没有问题的。不过关于多个参数的定义,建议除第一个参数外,其他的参数带上消息参数的名称,这样比较容易在调用时清晰的知道各个参数的作用。
     [myFraction setTo :1 :2];换成
     [myFraction setTo :1 d:2];调用时
    [myFraction setTo :1 d:2];
      

  2.   

    没有任何错误。
    如果你在同一个文件中实现,需要去掉:所有的#import 除了,#import <Foundation/Foundation.h>
    如果在多个文件中实现,则需要自己创建多个文件。
    另外,你的实现函数convertToNum,比上面的定义多了一个"t"
    希望对你有所帮忙。