我一直在看苹果公司的一些示例代码,特别是使用AVCam框架的AVFoundation项目。

它是主视图控制器文件,开发人员具有多个@implementation部分:

@implementation AVCamViewController
@implementation AVCamViewController (InternalMethods)
@implementation AVCamViewController (AVCamCaptureManagerDelegate)

它们每个都有对应的@interface部分。

所有这些都在单个AVCamViewController.m文件中。我以前从未见过这样做,并且想知道其背后的原理。

这只是个人风格吗?

它提供任何固有的优势吗?

最佳答案

它们称为类别。这是一个很好的解释:https://stackoverflow.com/a/864877/865967

我确定其他人可以提供更具体的原因,但是我认为当人们在相同的.h / .m文件中使用此模式时,这只是出于可读性和分隔性。

关于ios - 单个文件中有多个@implementation块,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14752748/

10-14 05:23