我正在使用 Stephen Kochan 的 Objective-C 第 4 版编程来自学 Objective-C。作为一个初学者,我还不知道如何调试,即使我将书中的代码复制并粘贴到 Xcode 中,我也会遇到错误。这是我从书中获得的无法编译的代码示例:
#import <Foundation/Foundation.h>
//---- @interface section ----
@interface Fraction: NSObject
-(void) print;
-(void) setNumerator: (int) n;
-(void) setDenominator: (int) d;
@end
//---- @implementation section ----
@implementation Fraction {
int numerator;
int denominator;
}
-(void) print {
NSLog (@"%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[]) {
@autoreleasepool {
Fraction *myFraction;
// Create an instance of a Fraction
myFraction = [Fraction alloc]; myFraction = [myFraction init];
// Set fraction to 1/3
[myFraction setNumerator: 1]; [myFraction setDenominator: 3];
// Display the fraction using the print method
NSLog (@"The value of myFraction is:");
[myFraction print];
}
return 0;
}
我得到的错误是第 12 行的“不一致的实例变量规范”。之后它只是一直告诉我“分子”和“分母”未声明。我得到的这个程序的最后一个错误是“@autoreleasepool”中的“@'token”之前有一个“预期的表达式”。我需要更改什么才能使其编译?谢谢!!