En c ++ je ferais
class A
{
public:
virtual void stuff()
{
//something
}
};
class B : public A
public:
virtual void stuff()
{
//something2
A::stuff() //something
}
};
Comment pourrais-je faire cela en C #? J'ai essayé
public void stuff()
{
//something2
A.stuff(); //something
}
mais ça ne marche pas
base
est le mot clé pour référencer votre superclasse en C #. Utilisation:
base.stuff();
Utilisez base
. Comme base.stuff();
Juste pour ajouter à la réponse ci-dessus, base.stuff () fonctionne, sauf si c'est le constructeur que vous essayez d'appeler, auquel cas il est appelé comme:
class A
{
public:
public A(){}
};
class B : A
{
public B() : base()
{
}
};