Apple Mach-O链接器错误(“重复符号”)

时间:2012-05-17 23:42:23

标签: iphone objective-c

我正在尝试编译我的游戏并且出现一个不应该出现的错误。

这些是我班级的文件:

Circle.h:

#import <UIKit/UIKit.h>

@interface Circle : NSObject
{

}
@property (readwrite, assign) CGPoint Center;
@property (readwrite, assign) float Radius;

+ (Circle *) CircleMakeFromCenter:(CGPoint)center radius:(float)radius;

@end

Circle.m:

#import "Circle.h"

@implementation Circle
@synthesize Center;
@synthesize Radius;

+ (Circle *) CircleMakeFromCenter:(CGPoint)center radius:(float)radius{
    Circle *c = [[Circle alloc] init];
    c.Center = center;
    c.Radius = radius;

    return c;
}

@end

这是一个错误,说Radius是一个重复的符号。

为什么会出现这个错误?

2 个答案:

答案 0 :(得分:12)

Objective-C中出现此类错误的最常见原因是您不小心将其放入了一个文件中:

#import "Circle.m"

你什么时候应该这样说:

#import "Circle.h"

答案 1 :(得分:0)

在我的情况下,实际上有两个不同的实现文件;我正在玩本地化,我不小心为不同的位置创建了两个不同的.m文件。删除并重新创建.m文件为我修复了错误。