我正在制作一个 Cocoa 应用程序,并使用 Xcode 进行各种代码生成。可以很好地生成 .h 和 .m 文件以对 UIView 进行子类化,但是当我将 UIViewController 子类化时,我@interface
在两个文件中都得到了相同的声明,除了它在最后的 .m 文件中具有( )
:
//in MyViewController.h
@interface MyViewController : NSViewController <MyViewDelegate>
@end
但是也
//in MyViewController.m
@interface MyViewController ()
@end
@implementation MyViewController
@end
然而它编译得很好。因此,假设这是正常行为,问题的两个部分是:(A)为什么会发生这种情况,以及(B)结果是什么——尤其是在编译顺序方面?
谢谢!