2

私はガード関数を使用していましたが、以下のガードステートメントを入力したとき:

var IOUArray = [IOU(amount: 20, payer: "Isabella", description: 
"test"),IOU(amount: 30, payer: "Dad", description: "Test2")]
NSKeyedArchiver.archiveRootObject(IOUArray, toFile: "IOUArray")
guard
    let books = NSKeyedUnarchiver.unarchiveObjectWithFile("IOUArray") as? [IOU]

とにかくelse句を入れたかったので、大したことではなかった「Expected else after guard condition」というエラーが表示されたので、次のように書きました。

else {return}

今回は、混乱を招く「Return invalid outside of func」というエラーが発生しましたが、これまでこのエラーを見たことがありませんでした。そこで、リターン後の状態に nil を追加しました。同じエラー。何が起こっているのかわかりません。助けはあなたに無限の感謝を与えます。

4

2 に答える 2

1

error: return invalid outside of a funcreturnグローバル空間でステートメントを使用する場合、コンパイラによって報告されます。ガードの else 部分は絶対に通り抜けてはならないので、そこから return を削除すると、別のエラーが発生します。いくつかの関数内のコードをチェックして、違いを確認してください

于 2016-01-03T05:42:27.433 に答える