使用Objective-C编译C并重复符号链接器错误(与iPhone相关)

使用Objective-C编译C并重复符号链接器错误(与iPhone相关),第1张

概述我有以下文件testf.h: #ifndef TESTF_H_#define TESTF_H_int test(int what){ return what;}#endif 我将它包含/导入TestAppDelegate.h(用于我的xcode项目中的其他.m文件).我得到一个重复的符号错误.如果我在一个从未包含/导入其他文件的.m文件中包含/导入testf.h,那么它可以正常工作 我有以下文件testf.h:

#ifndef TESTF_H_#define TESTF_H_int test(int what){    return what;}#endif

我将它包含/导入TestAppDelegate.h(用于我的xcode项目中的其他.m文件).我得到一个重复的符号错误.如果我在一个从未包含/导入其他文件的.m文件中包含/导入testf.h,那么它可以正常工作.所以似乎#ifndef / #define / #endif没有效果.反正有没有绕过这个?

谢谢

解决方法 这是一个函数定义,它属于c,cpp或m文件.

使用#defines这一流行技巧可以保护您免受编译器错误的影响(通常是为了解决循环#include依赖关系.)它不能防止链接器错误.这正是人们将声明放在c(或m)文件中的h文件和定义中的原因.

总结

以上是内存溢出为你收集整理的使用Objective-C编译C并重复符号链接器错误(与iPhone相关)全部内容,希望文章能够帮你解决使用Objective-C编译C并重复符号链接器错误(与iPhone相关)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1028981.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-23
下一篇2022-05-23

发表评论

登录后才能评论

评论列表(0条)

    保存