私は非常に具体的な問題を抱えています。さまざまな状態をとるDAO(データアクセスオブジェクト)を使用しています。これらの状態はinitメソッドに渡されてから使用されます。
今私が抱えている問題は、具体的な状態をinit
メソッドに渡すことができないように見えることです.
object-c ポインターの __autoreleasing id への暗黙的な変換は、ARC では許可されていません
コード:
-(DAOObject *)makeSpecificDataAccessObject{
SQLiteState* localstate = [[SQLiteState alloc] initWithTableName:@"TableName"];
DAOObject* specificDAO = [[DAOObject alloc] initWithLocalState:localstate]; //where error happens
return specificDAO;
}
@interface DAOObject : NSObject <SettingsListenerProtocol>
-(id)initWithLocalState:(id<StateProtocol> *)LocalState;
@end
@interface SQLiteState : NSObject <StateProtocol>
-(id)initWithTableName:(NSString *)tableName;
@end