例如
NSError *error = nil;
if ([something error:&error]) {
// ...
}
// ...
if ([somethingElse error:&error]) {
// ...
}
如果我使用相同的 NSError 而不将其重置为零,我会遇到任何问题吗?
通常我会说没关系,但我担心其他人会在他们打算使用另一个错误时使用另一个错误。
例如
NSError *error = nil;
if ([something error:&error]) {
// ...
}
// ...
if ([somethingElse error:&error]) {
// ...
}
如果我使用相同的 NSError 而不将其重置为零,我会遇到任何问题吗?
通常我会说没关系,但我担心其他人会在他们打算使用另一个错误时使用另一个错误。
没有问题,但是在传递与参数相同的指针之前检查错误。如果 something 方法有错误,而 somethingElse 也有错误,error 变量将有一个指向第二个的指针。认为您将指针传递给指向对象的指针。
NSError *error = nil;
if ([something error:&error]) {
// ...
}
if (error) {
//...
}
if ([somethingElse error:&error]) {
// ...
}
我不认为你会有问题。您的NSError
变量只会被重新分配。