0

Error Handling Programming Guideを見ると、次のような場合、戻り値が NO でない限り、 NSError パラメータtheErrorを決して評価してはならないことがわかります。

BOOL success = [myDoc writeToURL:[self docURL] ofType:@"html" error:&theError];

戻り値が成功の BOOL ではなく、代わりにコレクション オブジェクトである場合はどうなりますか?

[NSIncrementalStore getsPermanentIDsForObjects:error] を例に取ります。errorパラメーターを使用してエラーを評価してはなりません。何を探すべきですか?nil ポインターまたは空の配列のいずれかを受け取ることができると思います。この場合、空の配列は適切な応答ではないように見えますが、他の関数では空の配列が適切な場合もあります。エラーが発生した場合、エラーオブジェクトに発生した内容の説明が含まれていることはわかりますが、実際にエラーが発生したことをどのように確認できるかは明確ではありません。

このような場合にエラーを示す通常の Cocoa または Foundation の方法は何ですか?

4

1 に答える 1

1

そのメソッドでは、渡されたオブジェクトと同じ数のアイテムの配列を返すことが期待されています。そうしないと (配列が nil または空である場合)、ドキュメントに記載されている内容に違反しているため、エラー状態が発生します。

配列内のオブジェクトのオブジェクト ID を含む配列。

返される配列は、オブジェクトが配列に表示されるのと同じ順序でオブジェクト ID を返す必要があります

于 2012-11-14T09:54:21.463 に答える