zoukankan      html  css  js  c++  java
  • iOS ... NS_REQUIRES_NIL_TERMINATION

    看到官方的一个样例不错,这里留记。

    #import <Cocoa/Cocoa.h>
    
    @interface NSMutableArray (variadicMethodExample)
    
    - (void) appendObjects:(id) firstObject, ...; // This method takes a nil-terminated list of objects.
    
    @end
    
    @implementation NSMutableArray (variadicMethodExample)
    
    - (void) appendObjects:(id) firstObject, ...
    {
    id eachObject;
    va_list argumentList;
    if (firstObject) // The first argument isn't part of the varargs list,
      {                                   // so we'll handle it separately.
      [self addObject: firstObject];
      va_start(argumentList, firstObject); // Start scanning for arguments after firstObject.
      while (eachObject = va_arg(argumentList, id)) // As many times as we can get an argument of type "id"
          [self addObject: eachObject]; // that isn't nil, add it to self's contents.
      va_end(argumentList);
      }
    }
    
    @end

    地址:https://developer.apple.com/library/mac/qa/qa1405/_index.html

    最常常见到的应该是UIAlertView里用的了。

    - (id)initWithTitle:(NSString *)title message:(NSString *)message delegate:(id /*<UIAlertViewDelegate>*/)delegate cancelButtonTitle:(NSString *)cancelButtonTitle otherButtonTitles:(NSString *)otherButtonTitles, ... NS_REQUIRES_NIL_TERMINATION;


  • 相关阅读:
    【背包专题】K
    【背包专题】J
    【背包专题】H
    【背包专题】C
    5972: 【递归入门】全排列
    51nod 1136 欧拉函数【数论】
    【背包专题】G
    【背包专题】I
    【背包专题】F
    各浏览器的Hack写法
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/4191066.html
Copyright © 2011-2022 走看看