기본적으로 매개변수가 2개 이상이어야 오버로딩이 가능하다
선언부
@interface UniversalDebug : NSObject
+ (void) print:(NSString *)tag
data:(id)param;
+ (void) print:(NSString *)tag
d1:(id)p1
d2:(id)p2;
+ (void) print:(NSString *)tag
d1:(id)p1
d2:(id)p2
d3:(id)p3;
@end
구현부
@implementation UniversalDebug
+ (void) print:(NSString *)tag data:(id)param
{
NSLog(@"\n%@: [%@]", tag, param);
}
+ (void) print:(NSString *)tag d1:(id)p1 d2:(id)p2
{
NSLog(@"%@: [%@] [%@]", tag, p1, p2);
}
+ (void) print:(NSString *)tag d1:(id)p1 d2:(id)p2 d3:(id)p3
{
NSLog(@"%@: [%@] [%@] [%@]", tag, p1, p2, p3);
}
@end