gpt4 book ai didi

c++ - 对象 C 错误 : "expected unqualified-id before class pointer"

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:57:15 25 4
gpt4 key购买 nike

我目前正在从事 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

成绩单是这样的:

LibraryImport.h:24: 错误:'export' 前需要不合格的 id

LibraryImport.h:24: 错误:实例变量“未命名”的大小未知

LibraryImport.h:24: 错误:应为 `;'在“导出”之前

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

LibraryImport* import = [[LibraryImport alloc] init];

最奇怪的是,当它最初被纯 Obj-C 程序调用时,它运行得非常好。但是项目性质需要把调用者改成obj-C++。而且,当我尝试将 obj-C 文件更改为 obj-C++ 时,我遇到了比以前更多的错误,包括现有的错误。

在过去的整整一周里,这些问题一直让我苦苦思索:

  1. 在这种情况下,如何才能成功初始化这个对象呢?

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

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

干杯,

曼卡

最佳答案

我不懂 Obj-C++,只懂 C++。

一些编译器将 export 视为关键字,尝试以不同的方式命名您的变量。

关于c++ - 对象 C 错误 : "expected unqualified-id before class pointer",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5192769/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com