0

私はObjective-Cを学び始め、クラスを書き始めますが、私の問題は私のクラスがメインによって認識されないことです

これが私のメインです:

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{
    @autoreleasepool
    {
        Fraction *fraction = [[Fraction alloc] init];
    }

    return 0;
}

私のインターフェース:

#import <Foundation/Foundation.h>

@interface Fraction : NSObject

-(void) print;
-(void) setNumerator: (int) n;
-(void) setDenominator: (int) n;
-(int) numerator;
-(int) denomerator;
-(double) convertToNum;

@end

実装:

#import "Fraction.h"

@implementation Fraction
{
    int numerator;
    int denomerator;
}

-(void) print
{
    NSLog(@"%i/%i", numerator, denomerator);
}

-(void) setNumerator: (int) n
{
    numerator = n;
}

-(void) setDenominator: (int) n
{
    denomerator = n;
}

-(int) numerator
{
    return  numerator;
}

-(int) denomerator
{
    return denomerator;
}

-(double) convertToNum
{
    if (denomerator != 0)
    {
        return (double) numerator / denomerator;
    }
    else
    {
        return NAN;
    }
}

@end

私が書いたときFraction *fraction = [[Fraction alloc] init];のエラーメッセージは、宣言されていない識別子の端数の使用です

4

1 に答える 1

1

main.m で、追加する必要があります

#import "Fraction.h"

コンパイラが分数について認識できるようにします。

于 2013-03-13T18:56:54.353 に答える