Je sais qu'une classe dérivée est une classe de base, donc vous pouvez toujours passer un objet dérivé à une fonction de membre de base. Maintenant, je m'interrogeais sur la situation inverse spécifiquement en comparant les opérateurs (la classe de base n'est pas abstraite et a des objets).Opérateur dérivé <recevant l'objet Base comme paramètre
Disons que j'ai:
class Base:
{
public:
Base(int m1, string m2);
virtual ~Base();
int GetM1()const;
string GetM2()const;
virtual bool operator<(const Base& base)const;
private:
int m1;
string m2;
};
Et je veux faire quelque chose comme ceci:
class Derived: public Base
{
public:
Derived(string member);
~Derived();
virtual bool operator<(const Base& base)const; // is this possible(without cast)???
};
Merci
L'opérateur dérivé sera Utilisé quand vous faites 'someDerivedObject
Barmar