iOS: Rujukan penuding nol apabila mengekod jenis enum bukan null?
淡淡烟草味
淡淡烟草味 2017-05-31 10:36:30
0
1
806

Strukturnya kira-kira seperti ini Kelas A mengandungi tatasusunan kelas B, dan kelas B mengandungi pembolehubah jenis penghitungan C.
A dimulakan seperti yang ditunjukkan dalam rajah semasa memulakan 10 elemen B, kecuali tatasusunan B kelas A tidak diubah suai Walau bagaimanapun, apabila pengekodan s dalam B, (penghitungan C ialah Status), nilai s boleh dicetak dengan baik, tetapi apabila pengekodan (s) Kemudian ralat dilaporkan (saya meletakkan titik putus pada kedua-dua mencetak dan mengekod ayat, dan yang terakhir ranap sebaik sahaja saya meninggalkannya)

func encode(with aCoder: NSCoder) { print(status) aCoder.encode(status, forKey: "status") }

Berikut ialah beberapa maklumat konsol:

Normal


*Menamatkan apl kerana pengecualian tidak ditangkap 'NSInvalidArgumentException', sebab: '-[_SwiftValue encodeWithCoder:]: pemilih tidak dikenali dihantar ke instance 0x608000444fb0'


Pada masa yang sama, terdapat Thread 1: signal SIGABRT di bahagian atas AppDelegate Selepas mencari di Google, nampaknya ia adalah kerana objek itu dikeluarkan awal, tetapi nilainya masih boleh dicetak sebelum pengekodan

.


Nilai boleh ditaip, tetapi nilainya bukan nilai yang dijangkakan Dalam gelung sebelum pengekodan, nilai jenis penghitungan bagi setiap B tatasusunan kelas A diganti satu demi satu (tidak menggantikan objek B secara langsung)

淡淡烟草味
淡淡烟草味

membalas semua (1)
阿神

Alasannya telah ditemui Sebabnya ialah kompilasi langsung jenis enumerasi akan menyebabkan pelbagai masalah menyelamatkan negara dan menjimatkan dan membaca nilai enumerasi

    Muat turun terkini
    Lagi>
    kesan web
    Kod sumber laman web
    Bahan laman web
    Templat hujung hadapan
    Tentang kita Penafian Sitemap
    Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!