美文网首页
前向引用-解决头文件相互引用导致的循环

前向引用-解决头文件相互引用导致的循环

作者: 借缕春风绽百花 | 来源:发表于2020-06-21 16:36 被阅读0次

当两个类需要相互引用,按一般情况是在类的头文件导入需要引用的类,可若相互引用,将会导致出现系统无法正确识别该类的情况。

这时候就需要使用前向引用来解决头文件相互引用导致的展开循环问题,具体操作如下:

①将相互引用的头文件中的其中一个import导入改为"@class"前向引用。

②在该类的实现文件中导入需要引用的头文件。

头文件中的前向引用起到类似声明的效果,在头文件中声明有这个类,但编译时并未展开引用的类,再到实现文件中去展开编译,接除相互引用引发的编译循环。

相关文章

  • 前向引用-解决头文件相互引用导致的循环

    当两个类需要相互引用,按一般情况是在类的头文件导入需要引用的类,可若相互引用,将会导致出现系统无法正确识别该类的情...

  • C/C++前向声明

    C/C++前向声明 头文件循环引用 避免引入头文件

  • Block循环引用(五)

    1、什么是循环引用?循环引用会导致什么问题? 相互持有,双方都无法释放,导致循环引用,A强引用着B,B强引用着A ...

  • iOS循环引用

    什么是循环引用? 循环引用:是指多个对象相互引用,导致内存无法释放,从而导致内存泄露。 循环引用的四种情况? 父类...

  • iOS 内存管理面试题(循环引用)

    循环引用 循环引用的实质:多个对象相互之间有强引用,不能释放让系统回收。 如何解决循环引用? 1、避免产生循环引用...

  • iOS定时器循环引用分析及完美解决方案

    目录 1.NSTimer导致的循环引用分析2.NSTimer循环引用解决思路误区3.NSTimer循环引用解决方案...

  • iOS可能导致内存泄漏的情况

    1.循环引用 常见于两个VC相互引用,通过@class解决; block 循环引用,通过__weak解决。 Use...

  • 4-8 循环引用

    3种循环引用 自循环引用 相互循环引用 多循环引用 Block的循环引用 NSTimer 的循环引用 破除循环引用...

  • iOS 循环引用导致内存泄漏

    首先我们需要先了解什么是循环引用 循环引用简单来说循环引用就是 A持有B B持有C C持有A ,因为相互持有,导致...

  • Xcode报错Cannot find interface dec

    这个error 是由于 头文件循环引用的原因,导致的。只要删除其中一个class的头文件中的#import引用,就...

网友评论

      本文标题:前向引用-解决头文件相互引用导致的循环

      本文链接:https://www.haomeiwen.com/subject/xtjaxktx.html