4

为了方便使用,我写了一个名为Addition的SBJsonParser Category:

@implementation SBJsonParser(Addition)

+ (NSDictionary *)parseJson:(NSData *)data {
    SBJsonParser *parser = [[SBJsonParser alloc] init];
    NSDictionary *dict = [parser objectWithData:data]; 
    [parser release];
    return dict;
}

@end

我的问题是:

  1. 这样对吗?
  2. 类方法中的指针解析器是静态的?如果不是,我应该将它声明为静态吗?
  3. 指针解析器需要释放吗?
4

4 回答 4

2
  1. 看起来不错,如果您确定 JSON 数据包含字典而不是数组。

  2. 不,也不。是本地的,如果方法是同步parser的,则不需要其他任何内容。-objectWithData:

  3. 是的。

于 2011-09-07T07:04:11.627 回答
1

这看起来格式正确且整体正确

在这种情况下,您不必为解析器使用静态关键字。

是的,您需要发布解析器,并且您已经在正确的位置完成了它。

于 2011-09-07T07:03:38.093 回答
1

1)看起来不错

2)它不是。你不应该。

3) 没关系

于 2011-09-07T07:04:24.583 回答
1

很好。解析器不是状态,它是常规的局部变量,但既然你无论如何都要释放它,那又怎样。是的,解析器需要被释放

于 2011-09-07T07:04:31.593 回答