如何从Obj-c文件调用Obj-c++文件中的函数
How to call a function in an Obj-c++ file from an Obj-c file?
我有一个.m文件,最近不得不包含对C++命名空间的引用,这意味着我需要重命名它,使其扩展名为.mm。这似乎很好,但现在,不相关的函数调用出现了链接器错误。以前我在标题中有以下内容,没有任何问题:
void CMLogMessage(NSString *Message, ...);
一旦我将相应的.m文件更改为.mm,我现在得到以下链接器错误:
Undefined symbols for architecture i386:
"_CMLogMessage", referenced from:
(Code References From .m Files Here)
我最好的
您正在进行C++名称篡改。声明函数具有C链接:
#ifdef __cplusplus
extern "C" {
#endif
void CMLogMessage(NSString *message, ...);
#ifdef __cplusplus
}
#endif
相关文章:
- C++ gmock - 我们如何在单元测试 cpp 文件中读取/获取 cpp 文件函数的参数值
- 使用其他头文件函数的头文件
- 创建文件函数是否可以打开仅在WinObj实用程序中的全局目录下列出的设备的句柄?
- 如何指定创建文件函数获取未缓存的结果?
- 标准库头文件函数原型的实现是如何用 c++ 编写的?
- 如何将类对象作为对另一个头文件函数的引用传递
- 读取文件函数lpbuffer和字节以读取澄清
- C++ - 未定义的对多个文件函数的引用
- 使用C++的可视 Unicode 文件函数
- C 创建文件函数错误
- WinAPI 创建文件函数 2.
- 具有CREATE_ALWAYS处置的创建文件函数
- 重写c库文件函数
- 如何使用客户端调用堆栈中的地址从 PDB 检索文件/函数/行号?
- 通过头文件函数将遍历的数据从二进制搜索树加载到Vector中
- 需要帮助无法弄清楚为什么我的头文件函数声明不起作用
- 是否可以在不使用文件函数的情况下使用代码块从文件运行某些用例测试?
- 如何用c++文件函数读写8位整数单位形式的数据
- 在c++中读文件函数如何识别文本文件的结束
- 使用Windows API的c++文件函数