Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 使用“时,应为类或命名空间”;c++;“枚举类”;在objective-c代码中_C++_Objective C_Objective C++ - Fatal编程技术网

C++ 使用“时,应为类或命名空间”;c++;“枚举类”;在objective-c代码中

C++ 使用“时,应为类或命名空间”;c++;“枚举类”;在objective-c代码中,c++,objective-c,objective-c++,C++,Objective C,Objective C++,有人能帮我解决这个问题吗。我在C++头文件中有定义。 enum class PixelFormat { ARGB32, RGB32 } 当我想在objective-c.mm源文件中执行类似操作时: PixelFormat x = PixelFormat::ARGB32; 顺便说一句,在Windows中,这个示例成功编译了,我在OSX中得到了编译错误“需要一个类或名称空间” 通过调用C++外部代码解决了问题。但是仍然有一个问题,是否可以做PixelFormat x=Pi

有人能帮我解决这个问题吗。我在C++头文件中有定义。
enum class PixelFormat {
      ARGB32,
      RGB32
}
当我想在objective-c.mm源文件中执行类似操作时:

PixelFormat x = PixelFormat::ARGB32;
顺便说一句,在Windows中,这个示例成功编译了,我在OSX中得到了编译错误“需要一个类或名称空间”


通过调用C++外部代码解决了问题。但是仍然有一个问题,是否可以做

PixelFormat x=PixelFormat::ARGB32在objective-c代码中?

这种类型的枚举需要c++11进行编译。你是用
-std=c++11
编译的吗?@ArnonZilca,是的,我用过。我对
c++
-
objective-c
连接知之甚少,但这在我的gcc上编译得非常好(当用启用的c++11编译时)。如果你只是尝试一下:
pixelx格式在您的objective-c中。或者使用
枚举
,而不是
枚举类
。试着看看你是否能缩小范围。@ArnonZilca,当我尝试
pixelx格式时工作正常,我在尝试获取值时出错
PixelFormat::ARGB32
。这种类型的枚举需要c++11编译。你是用
-std=c++11
编译的吗?@ArnonZilca,是的,我用过。我对
c++
-
objective-c
连接知之甚少,但这在我的gcc上编译得非常好(当用启用的c++11编译时)。如果你只是尝试一下:
pixelx格式在您的objective-c中。或者使用
枚举
,而不是
枚举类
。试着看看你是否能缩小范围。@ArnonZilca,当我尝试
pixelx格式时它工作正常,当我试图获取值时出错
PixelFormat::ARGB32