static with(void)

时间:2013-01-29 10:05:18

标签: ios static void

以下是Apple代码的一部分。

我不明白第一行。为什么返回时会出现“无效”?

// forward declaration of our utility functions
static NSUInteger _ImageCount(void);

static NSUInteger _ImageCount(void)
{
    static NSUInteger count = 0;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        count = [_ImageData() count];
    });
return count;
}

2 个答案:

答案 0 :(得分:0)

foo(void)表示该函数不期望任何参数。但确实会返回NSUInteger

static NSUInteger _ImageCount(void)
^      ^          ^           ^
|      |          |           parameter list
|      |          function name
|      return type
visibility (may be referenced only from this module)

答案 1 :(得分:0)

我认为你错误地构思了这个函数,因为函数应该返回“NSUInteger”。

“void”是来自c / c ++的参数类型,它指定“无参数”。

静态NSUInteger _ImageCount(void);

“NSUInteger”是返回类型“void”指定无参数