iPhone 应用程序中的 C++ 代码

标签 c++ iphone xcode

我正在尝试使用 Xcode 3.1.3 从我的 Cocoa Touch iPhone 应用程序中使用 C++ 库 (CLucene)。当我在 iPhone 模拟器中运行时,一切正常,但当我在设备上运行时,事情变得很奇怪。似乎指针没有从 Objective-C++ 代码(我的应用程序)正确传递到 C++ 库(CLucene)。

在设备上调试应用程序时,我可以看到作为参数传递给 C++ 函数的 const char* 变量从 Objective-C++ 中的 0x12546c0 变为 C++ 中的 0x4e。由于 0x4e 未指向有效的 const char*,因此 C++ 代码失败。在模拟器中调试时不会发生这种情况。

我将 C++ 库直接编译到应用中,而不是链接到静态或动态库。

如有任何帮助,我们将不胜感激。

最佳答案

在项目的build设置中禁用“Compile for Thumb”可解决此问题。

关于iPhone 应用程序中的 C++ 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1059727/

相关文章:

c++ - 有什么方法可以只从 C++ 中的标准输入读取满足特定条件的字符吗?

c++ - 是否有任何 API 或方法可以防止对动态分配的内存进行读访问(和写)?

iphone - NSString 保留计数为 2147483647

iphone - 我的自定义类中未调用 Touches Began 方法

objective-c - 将 UITableView 和数据源/委托(delegate)放在单独的类中不起作用 (XCode 4.2)

c++ - 当没有固定大小的浮点类型可用时处理浮点值的字节顺序

C++ 管道错误,pipe_wait 永远

iphone - 长按自定义注释图钉更改为默认红色图钉

从 XIB 文件加载时,Swift 中的 iOS 键盘太宽太高

swift - 为什么 WkWebView 不在线播放?