多参数函数的写法...NS_REQUIRES_NIL_TERMINATION

来源:互联网 发布:哪里可以买到淘宝店铺 编辑:程序博客网 时间:2024/05/20 16:00

1、NS_REQUIRES_NIL_TERMINATION 是一个宏,用于编译时非nil结尾的检查。自定义不定参数的方法与C/C++一样,示例如下:

//.h  - (NSString *)addMoreArguments:(NSString *)firstStr,...NS_REQUIRES_NIL_TERMINATION;    //.m  - (NSString *)addMoreArguments:(NSString *)firstStr,...  {      va_list args;      va_start(args, firstStr); // scan for arguments after firstObject.            // get rest of the objects until nil is found      NSMutableString *allStr = [[[NSMutableString alloc] initWithCapacity:16] autorelease];      for (NSString *str = firstStr; str != nil; str = va_arg(args,NSString*)) {          [allStr appendFormat:@"* %@ ",str];      }            va_end(args);      return allStr;  }  


0 0
原创粉丝点击