[解決済み] Type Has No Subscript Members?
2022-02-15 13:06:09
質問
を実行しようとすると、"Type 'Ship' has no subscript members というエラーが表示されます。
var coor = ship[index]
をやってみた。
var coor = ship?[index] as? Coordinate
しかし、次のエラーが発生しました: "タイプ 'Ship'" の非オプショナル値でオプショナルチェーンを使用することはできません。
以下は、私の
Ship
クラスがあります。
import Foundation
class Ship: NSObject, NSCoding {
var shipCoors: [Coordinate]?
var count: Int {
var count = 0
for _ in shipCoors! {
count++
}
return count
}
init(shipCoors: [Coordinate]) {
self.shipCoors = shipCoors
}
required init(coder decoder: NSCoder) {
self.shipCoors = decoder.decodeObjectForKey("shipCoors") as? [Coordinate]
}
func encodeWithCoder(coder: NSCoder) {
coder.encodeObject(shipCoors, forKey: "shipCoors")
}
}
は
Coordinate
クラスはまた、タイプ
NSObject, NSCoding
などなど・・・。
オブジェクトを読み込むと、配列の中にあるように見えますが (
NSUserDefaults
)? どうしたら取り出せるのでしょうか?
解決方法は?
サブスクリプトを
Ship
オブジェクトに、オプションの
Coordinate
:
subscript(index: Int) -> Coordinate? {
guard let coordinate = shipCoors?[index] else {
return nil
}
return coordinate
}
shipCoors
は、次のように宣言されています。
[Coordinate]?
(オプションの配列)であることから
Ship
には配列がありません。
shipCoors
. この場合、私は
nil
しかし、あなたが望むものを代わりに返すことができます。
関連
-
[解決済み】NSURLErrorDomainエラーコードの説明
-
[解決済み] Cordova Camera iOSの問題。NOT_FOUND_ERR
-
[解決済み] 指定されたホスト名を持つサーバーが見つからなかった
-
[解決済み] SwiftUI vs Interface Builderとストーリーボード【非公開
-
[解決済み] UTF-8でエンコードされたNSDataをNSStringに変換します。
-
[解決済み] ブリッジングヘッダ用のプリコンパイルヘッダの発行に失敗しました。
-
[解決済み] CocoaPods は、ポッド "Firebase/CoreOnly" の互換性のあるバージョンを見つけられませんでした。
-
[解決済み] 脱獄したiphoneで`uicache`コマンドは何をするのですか?[クローズド]
-
[解決済み] iOS 9 : ユニバーサルアプリの警告「アプリがフルスクリーンを必要としない限り、すべてのインターフェイスの向きをサポートする必要があります」。
-
[解決済み] トランスポートセキュリティがクリアテキストのHTTPをブロックしています。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Xcode は、[バンドル ID] に一致する iOS App Store プロビジョニングプロファイルを見つけられませんでした。
-
[解決済み] Int 型のインデックスを持つ [AnyObject]? の値を添え字として使用できません。
-
[解決済み] シミュレータへのサービス接続の開始に失敗しました Xcode
-
[解決済み] 基本的なUIButtonをプログラムで作成するには?
-
[解決済み] UITabBar アイコンが正しく表示されない
-
[解決済み] iOS Development 証明書が失効されました
-
[解決済み] データソースからのセルの取得に失敗しました。
-
[解決済み] CocoaPodsでポッド「Firebase/Core」の互換バージョンが見つからなかった|cloud_firestore, Flutter
-
[解決済み] Xcode 4のBundle creator OS Type code ?
-
[解決済み] viewDidLoad()は何のためにあるのですか?[重複]する