iOS 声明一个基类方法

#define MethodNotImplemented() \
@throw \
[NSException exceptionWithName:NSInternalInconsistencyException \
reason:[NSString stringWithFormat:@"You must override %@ in a subclass", NSStringFromSelector(_cmd)] \
userInfo:nil]

.h

@interface DrawMapModelBase : NSObject
#pragma mark 辅助方法
// 子类必须实现
- (BOOL)thisDrawMapModelIsCanBeSeenByTimetag:(NSTimeInterval)time
                                 AndMaxValue:(CGFloat)maxValue
                                 AndMinValue:(CGFloat)minValue;
@end

.m


#import "DrawMapModelBase.h"

@implementation DrawMapModelBase
// 这个model对应的图当前是否可见(子类必须实现)
- (BOOL)thisDrawMapModelIsCanBeSeenByTimetag:(NSTimeInterval)time
                                 AndMaxValue:(CGFloat)maxValue
                                 AndMinValue:(CGFloat)minValue{
    MethodNotImplemented();
}
@end

如果子类没有实现这个方法就会崩

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • mean to add the formatted="false" attribute?.[ 46% 47325/...
    ProZoom阅读 2,726评论 0 3
  • 一年级语文上册生字表 生字表一(共400字) 啊(ā)爱(ài)安(ān)岸(àn)爸(bà)八(bā)巴(bā)...
    meychang阅读 2,886评论 0 6
  • sì 支zhī茶chá 对duì 酒jiǔ,赋fù 对duì 诗shī,燕yàn子zi 对duì 莺yīng 儿é...
    每个人的孟母堂阅读 1,265评论 0 6
  • 一、背景 二、重构的方法2.1 整理所有方法并划分功能块2.2 思考功能块去处2.3 思考功能块用法 三、AppD...
    LuckyCat_A阅读 2,265评论 0 7
  • 今天的宝贝格外的棒!晚上放学回家,我在厨房做饭,本来是喊他爸爸洗一点水果的,可是宝贝主动要求洗水果,自己像模像样的...
    赵羽斐阅读 232评论 0 0