Stephen Kochan 著の「programming in Objective-C」という本を読んでいます。私はそれを読んでいて、コードの一部を本から直接プログラムにコピーしました。私が抱えている唯一の問題は、オブジェクトで free を使用することです。私のコードは次のとおりです(プログラム全体を入れて申し訳ありませんが、私は初心者なので、プログラムの早い段階で何か間違ったことをしている可能性が高いです):
//
// main.m
// prog1
//
// Created by Brent Blackwood on 8/7/12.
// Copyright (c) 2012 Brent Blackwood. All rights reserved.
//
#import <stdio.h>
#import <objc/Object.h>
//------- @interface section -------
@interface Fraction: NSObject {
int numerator;
int denominator;
}
-(void) print;
-(void) setNumerator: (int) n;
-(void) setDenominator: (int) d;
@end
//------- @implementation section -------
@implementation Fraction;
-(void) print{
printf (" %i/%i ", numerator, denominator);
}
-(void) setNumerator: (int) n {
numerator = n;
}
-(void) setDenominator: (int) d {
denominator = d;
}
@end
//------- program section -------
int main (int argc, char *argv[]) {
// Create an instance of a Fraction
Fraction *myFraction = [Fraction new];
// Set fraction to 1/3
[myFraction setNumerator: 1];
[myFraction setDenominator: 3];
// Display the fraction using the print method
printf ("The value of myFraction is:");
[myFraction print];
printf ("\n");
[myFraction free]; // ************---This is the line giving the error.---***********
return 0;
}
私が得ているエラーは、「[myFraction free]」行の後に「No visible @interface for 'Fraction' はセレクター 'free' を宣言しています」です。本を一通り読んだのですが、何が問題なのかわかりません。このエラーについては言及されていません。これは何を意味し、どうすれば修正できますか?
質問する前に、ここでスタックに関するいくつかの同様の質問も見ましたが、それらの問題は私が遭遇しているエラーではないようです。助けてください。ありがとう!