私はObjective Cの継承に別の奇妙な問題があります。私は、NSObjectとIGameObjectから継承するクラスGameObjectであるIGameObjectというプロトコルを持っています。最後にGameObjectから継承するPlayerです。ObjC継承の別の奇妙さ
問題は、Player *をIGameObject *に割り当てると、 GameObject *にPlayer *を割り当てるとうまくいきます。私はこれがすべて私が読んだことでは不可能であることを見ていない。ここにコード:
-(IGameObject*) clone
{
Player* p=(Player*) 0xFFfFFFFF;
//Throws an error saying that Cannont initialise a variable of type IGameObject with an value of Player*
IGameObject* go=p;
//This works perfectly
GameObject* go2=p;
return [[Player alloc] initWithGameObject:self];
}
何が起こっているのでしょうか?
ありがとうございます。
問題がどこにあるかを確認するのは簡単なテストでした。それは速い答えのためにたくさんありがとう、それでした。 – Notbad