初始化错误中的类型不兼容

时间:2011-07-13 18:12:46

标签: objective-c xcode compiler-errors

我已经在这几个小时了,无法找到解决方案。当我尝试编译以下内容时,我在标记的行上出现“初始化时不兼容的类型”错误。任何帮助都被接受。

这是我的 Controller.m 文件:

#import "Controller.h"
#import "Transactions.h"

@implementation Controller
- (IBAction)add:(id)sender {
    double x = [addF doubleValue];
    double bal = [balanceF doubleValue];
    double newBal = [trans add:x to:bal]; //Error marked here
    [balanceF setDoubleValue:newBal];
}

- (IBAction)sub:(id)sender {
    double x = [subF doubleValue];
    double bal = [balanceF doubleValue];
    double newBal = [trans sub:x from:bal]; //Error marked here
    [balanceF setDoubleValue:newBal];
}
@end

这是我的 Transactions.m 文件:

#import "Transactions.h"

@implementation trans

-(double) add:(double)x to:(double)bal{
    return (x + bal);
}

-(double) sub:(double)x from:(double)bal{
    return (bal - x);
}

@end

如果您还有其他需要,请告诉我。 谢谢!

1 个答案:

答案 0 :(得分:1)

'trans'是一个类,所以如果使用类声明/ call方法,而不是它的实例,则应使用+声明它们:

+(double) add:(double)x to:(double)bal{

+(double) sub:(double)x from:(double)bal{

不要忘记更改头文件......