我希望能够在Objective C中动态地进行类型转换,并访问实例属性。以下是伪代码:
id obj;
if (condition1)
obj = (Class1*)[_fetchedResults objectAtIndex:indexPath.row];
else
obj = (Class2*)[_fetchedResults objectAtIndex:indexPath.row];
NSNumber *latitude = obj.latitude;
然后编译器告诉我以下内容:在__strong id对象类型中找不到“latitude”属性 无论Class1和Class2是否为核心数据实体,它们几乎具有相同类型的属性。在条件1中,_fetchedResults返回Class1类型的对象,在条件2中_fetchedResults返回Class2类型的对象。
有人能给我提示如何解决这种问题吗?
谢谢!