-
Notifications
You must be signed in to change notification settings - Fork 0
方法修饰宏NS_DESIGNATED_INITIALIZER、NS_UNAVAILABLE、NS_REQUIRES_SUPER
Deepin edited this page Nov 22, 2021
·
1 revision
修饰符是用来修饰所有方法的,比如查看UIViewController.h,可以看到对方法修饰宏的使用
- (instancetype)initWithNibName:(nullable NSString *)nibNameOrNil bundle:(nullable NSBundle *)nibBundleOrNil NS_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder *)coder NS_DESIGNATED_INITIALIZER;
-
NS_DESIGNATED_INITIALIZER
:表示类的这个方法必须在子类实现 -
NS_UNAVAILABLE
:表示类的这个方法在子类不可用 -
NS_REQUIRES_SUPER
:表示类的这个方法在子类重写时,必须在方法内部使用super调用父类的这个方法。 若子类重写方法时不想去调用父类的方法,又不想出现警告,可以用下面的方式处理。
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wobjc-missing-super-calls"
- (void)initUI {
// [super initUI];
}
#pragma clang diagnostic pop