如何在每个孩子的内部变量中不同地投射一个超变量?
|
当前状态
我有一个名为\“ GeneralCard \”的超类,它是许多\“ CardsControllers \”的超类。
继承自\“ GeneralCard \”的每个类都有一个UIViewController的不同子类,其中包含不同的NSManagedObjects子类-
(WhiteCardsController-> WhiteCard,
RedCardsController-> RedCard ...)。
我有很多对于所有ManagedObjects都相同的功能。所以我想将它们归入普通卡。
问题
我创建了一个\“ General \” NSManagedObject,名为:
NSManagedObject *currentCard.
现在,我在每个View控制器上尝试投射:
self.currentCard = (WhiteCard*)self.currentCard;
这样我就可以使用\“ WhiteCard \”属性。
当我不断收到类似这样的错误消息时,
...卡视图
控制器/WhiteCardViewController.m:226:
错误:请求成员“字母”在
不是结构或联合的东西
由于字母不是在NSManagedObject中构造的,而是在他的WhiteCard子类中构造的。
对这个问题
*我如何从超级共享相同的变量,但在每个vew控制器上将其强制转换为不同的变量?*
非常感谢
沙尼
没有找到相关结果
已邀请:
1 个回复
戊袱
父类将具有以下内容:
在具有这些方法的每个控制器类中,消息“ 4”将返回一个强制转换为当前类型的对象。该方法不能保证最终的对象实际上就是该类型的对象,因此必须注意确保通过发送非“ 5”个对象白卡特定的消息来确保不会发生运行时错误。