2016-05-23 16 views
0

私のモデルでは、attributeタイプInt64のオブジェクトObjectがあります。私はそれを使用する場所コアデータ+ swift Int =クラッシュ

class Object: NSManagedObject { 
    @NSManaged var attribute: Int 
} 

とここにある:ここで

はObject.swiftファイルです

let anInt: Int = 3 
security.attribute = anInt 

コードは64ビットデバイス上で正常に動作しますが、32ビットデバイス上認識できないセレクタObject.attributeが原因でクラッシュします。

クラッシュのこの種のは、コンパイラによってキャッチされるべきであると私には思える

答えて

1

ソリューションはNSManagedObjectオブジェクト

class Object: NSManagedObject { 
    @NSManaged var attribute: Int64 
} 

Int64として属性をマークし、キャストすることですIntからInt64

let anInt: Int = 3 
security.attribute = Int64(anInt) 
+0

右のように、Core Dataには「Int」型がないため、すべてのhav特定のサイズ。 –

関連する問題