Ho questo codice e hanno bisogno di portarlo ad arco, ma non so come:Come posso sostituire class_createInstance in arc?
case FIELDTYPE_OBJECT:
className = [fieldType substringWithRange:NSMakeRange(2, [fieldType length]-3)];
rel = class_createInstance(NSClassFromString(className), sizeof(unsigned));
Class theClass = [rel class];
if ([rel isKindOfClass:[DbObject class]]) {
//Load the record...
NSInteger Id = [rs intForColumn:[theClass relationName]];
if (Id==0) {
fieldValue = [rel init];
} else {
Db *db = [Db currentDb];
fieldValue = [db loadById: theClass theId:Id];
}
}
break;
L'errore è:
error: 'class_createInstance' is unavailable: not available in automatic reference counting mode
Come sostituirlo?
Ho bisogno di creare oggetti di classe in runtime.
Che non gestirà il parametro extraBytes su class_createInstance –
È ancora necessario quando si utilizza alloc init? –
Se il codice utilizza i byte aggiuntivi, sì. Altrimenti, no –