小编Man*_*nca的帖子

Obj-C错误:"在类指针之前预期的非限定id"

我目前正在开发一个iOS开发项目.为方便起见,我在早期阶段将功能分成几个小程序.该项目包括Obj-C,Obj-C++和C++程序.现在我将它们放在最终产品中,并且在(我猜)Obj-C和C++之间的兼容性方面遇到了一些奇怪的行为.

我试图在一个obj-C++程序中初始化一个对象,它来自一个obj-C类.但是在编译obj-C类头文件时我不断收到错误:

#import <Foundation/Foundation.h>
@class AVAssetExportSession;

@interface LibraryImport : NSObject {
AVAssetExportSession * export;   //Error line
NSError* movieFileErr;
}
//class methods
Run Code Online (Sandbox Code Playgroud)

成绩单是这样的:

LibraryImport.h:24:错误:'export'之前的预期unqualified-id

LibraryImport.h:24:错误:实例变量'unnamed'的大小未知

LibraryImport.h:24:错误:预期`;' 在'出口'之前

这个调用在obj-C++文件中是这样的:(这里没有检测到错误,只是觉得有些东西可能相关)

LibraryImport* import = [[LibraryImport alloc] init];
Run Code Online (Sandbox Code Playgroud)

最奇怪的部分是,当它最初由一个纯粹的Obj-C程序调用时,它的工作非常好.但项目性质需要将调用者更改为obj-C++.而且,当我尝试将obj-C文件更改为obj-C++时,我得到的错误比以前更多,包括现有错误.

以下是让我在过去整整一周内撞墙的问题:

  1. 在这种情况下,我如何成功初始化此对象?

  2. 这个问题是否与obj-C和C++之间的兼容性有关?如果是这样,有兼容性的一般解决方案或一些明确的解释吗?

如果需要更多信息,请告诉我(这是我第一次遇到这个问题,我甚至不知道从哪里开始......).任何见解将不胜感激.非常感谢你 :-)

干杯,

曼卡

c++ objective-c core-audio objective-c++ ios

2
推荐指数
1
解决办法
4043
查看次数

标签 统计

c++ ×1

core-audio ×1

ios ×1

objective-c ×1

objective-c++ ×1