Diciamo che ho due classi di classe Oggetto (classe base) e attore (classe derivata). La classe actor usa physics quindi ho bisogno di implementarlo nella classe Actor. Ma ci sono altre classi derivate della classe "Object" che non usano la fisica, quindi non voglio avere implementato la fisica su di esse perché sarebbero dati inutili.
class Object
{
public:
Object();
~Object();
virtual void Main();
private:
Transform transform;
};
class Actor : public Object
{
public:
Actor();
~Actor();
void Main();
private:
Physics physics; //Can i make this????
};
Poiché ho implementato solo la fisica nella classe actor, ho bisogno di aggiornarlo in qualche modo alla classe base in questo modo:
int main()
{
Object* BaseClass = new Actor;
}
I dati "fisici", definiti sull'attore, possono essere sottoposti a upcast anche se non lo si desidera utilizzare esternamente? Non c'è alcun modo in cui posso farcela?