Xcode和ZXingWidget:在.mm文件中导入Obj-C头文件

时间:2011-08-25 11:05:16

标签: objective-c ios xcode header-files zxing

我使用XCode 4.0开发iOS项目。

在我当前的项目中,我正确地添加了ZXingWidget库但是我必须在实现MyViewController的类中更改.mm扩展名以便导入“QRCodeReader.h”和“ZXingWidgetController.h”。 “,我需要使用ZXing库的两个标题。

现在,如果在同一个MyViewController.mm我想导入我的AppDelegate(显然是一个Objective-C类),我收到一个编译错误,Xcode信号发送到我的递归添加的其他头文件AppDelegate中。这些错误属于这些类型:

GCC 4.2 Error - Instance variable '<unnamed'> has unknown size
Expected ';' before 'public'
Expected unqualified-id before 'public'

我相信这是因为我没有正确管理Objective-C和C ++混音,当我对行#import "MyAppDelegate.h"发表评论时,错误消失了。

我有什么办法可以解决这个问题吗?还有一种解决方法可以做到!

谢谢!

编辑1:仅当我在.mm文件中导入App Delegate标头时才会发生错误。在我项目的每个其他.m文件中,我都可以成功导入相同的App Delegate而不会出错。我觉得.mm扩展和GCC有问题。

已解决:我有另一个使用此代码的外部库接口

@interface Name : NSObject {
    @private

    @public
        id var1;
        int var2; // ecc...
}

错误指向关键字@public。我评论了@private关键字,一切都很顺利!如果有人能解释我的原因,我会很高兴。

0 个答案:

没有答案