iOS const CGFloat错误:链接器命令失败

时间:2014-10-23 07:41:25

标签: ios objective-c cgfloat

我想在const CGFloat文件中添加常量Header.h

#import <UIKit/UIKit.h>

#ifndef Sample_Header_h
#define Sample_Header_h

const CGFloat myCustomCoordinateY = 430.0f;

#endif

我总是遇到错误:

ld: 6 duplicate symbols for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我已经用Google搜索了这个错误,但遗憾的是我仍然没有找到解决方法。这个问题有什么解决方案吗?

1 个答案:

答案 0 :(得分:4)

变量在头文件中定义,当您在多个.m或.mm文件中导入标头时,会导致重复的符号错误。

解决方案是在头文件中声明它并在.m或.mm文件中为其指定值。

头文件:

extern const CGFloat myCustomCoordinateY ;

.m文件:

#import "Header.h"
const CGFloat myCustomCoordinateY = 430.0f ;