2013-02-20 59 views
0

我有一个关于使用extern和继承的问题。我使用X代码编写Objective C中的iOS应用程序。外部继承重复符号错误,发生了什么?

我有两个假设类B和C都从A类继承

现在的A类进口被称为约束类,在它的头文件是这样的:#进口“Constraints.h”。在.H约束头部声明各种外部NSInteger常量VAR_NAME值高于@interface约束:NSObject但低于导入。在.M实现中,externs被初始化为例如如下NSInteger const VAR_NAME = 1。再次将此置于进口以下,但高于@implementation Constraints一行。此文件旨在应用程序广泛的全球约束。

但是,这样做的时候,就建立了XCode上报的Mach-O-链接错误为每声明为约束文件的extern每个变量在B类和C重复的符号。

所以我做了什么,然后就是删除从父类A类限制进口,而是将其导入直接进入类B和C.不过,我得到了同样的问题。

我一直抨击我的头靠在这张桌子上几个小时现在,任何帮助将不胜感激。

回答

1

你能发布产生错误的代码吗?这对我来说似乎是正确的,通常只是由错字造成的。我读过其他文章,其中人们只是简单地导入.m文件而不是.h文件,这通常会导致此错误。

+0

感谢您的回复,我会尝试做一个小例子并测试代码非常大。 – 2013-02-20 10:04:40

+0

我的简单例子没有问题,所以我的模型应该如何工作似乎是正确的。子类也需要导入约束类,因为这不是继承的。 – 2013-02-20 11:08:01

+0

我很高兴你能工作。如果我有帮助,upvotes总是感激! – JiuJitsuCoder 2013-02-21 17:06:29