2

我在命名我的选择器时遇到了麻烦,它接受一个参数:一个指向 NSError 实例的指针的指针。这样做的最佳做法是什么?

现在我有类似的东西:

- (void)loadContentIfNeededAndGenerateError:(NSError **)error;

但这看起来不是命名选择器的好方法。

4

2 回答 2

7

苹果使用命名约定WithError:,所以我猜:

- (BOOL)loadContentIfNeededWithError:(NSError **)error;

注意:返回BOOL并且不要依赖非nil状态error来检测错误。

换句话说:

NSError *error = nil;
if (![self loadContentIfNeededWithError:&error]) {
    // React to error
}
于 2013-10-03T15:12:28.233 回答
0

要不就:

- (BOOL)loadContentIfNeeded:(NSError **)error;

我从 NSManagedObjectContext 中获得了我的先例:

- (BOOL)save:(NSError **)error;
于 2013-10-03T15:56:01.453 回答