在设备上安装时,Xcode的GDB说“警告:当前语言与此框架不匹配”

时间:2012-03-07 18:54:27

标签: c++ ios xcode gdb

我正在构建一个使用C ++库的基于音频的iOS应用。在Xcode 3和iOS 4上构建和安装的一切都很好。

我正在开发一款在模拟器上构建并运行完美的应用程序,但在设备上安装时,我收到以下错误:

Current language: auto; currently objective-c++ Warning: the current language does not match this frame.

其中一个C ++头文件(baseClass.h)中有一个EXC_BAD_ACCESS。文件类型为Default C header,实现文件(baseClass.cpp)的文件类型为Default - C++ source。我尝试将标题的文件类型更改为C++ header,但问题仍然存在。

为什么GDB说这是一个语言问题?

2 个答案:

答案 0 :(得分:0)

您的c ++实施文件应重命名为.mm(例如baseClass.mm)。试试看,看看它是否有效。

答案 1 :(得分:0)

问题是我在初始化音频回调中活动的对象之前初始化了音频会话。如果您在模拟器上运行应用程序,这不是问题,但是当在设备上运行时,音频回调无法找到应该在其中的对象并崩溃!

所以解决这个问题只是在初始化音频会话之前初始化所述对象。