Existe-t-il un moyen d'imposer l'utilisation du mot clé C ++ 11 override
dans Visual C ++ 2012?
(Par exemple, si j'oublie de dire override
, alors je veux obtenir un avertissement / une erreur.)
Existe-t-il un moyen d'imposer l'utilisation du mot clé C ++ 11 override
dans Visual C ++ 2012?
(Par exemple, si j'oublie de dire override
, alors je veux obtenir un avertissement / une erreur.)
C++11 est presque ce que vous voulez.
À l'origine, l' override
mot-clé faisait partie d'une proposition (N2928) qui comprenait également la possibilité d'appliquer son utilisation:
class A
{
virtual void f();
};
class B [[base_check]] : public A
{
void f(); // error!
};
class C [[base_check]] : public A
{
void f [[override]] (); // OK
};
L' base_check
attribut serait faire une erreur de remplacer une fonction virtuelle sans l'aide de l' override
mot-clé.
Il y avait aussi un hiding
attribut qui indique une fonction masque fonctions dans la classe de base. Si base_check
est utilisé et une fonction, se cache l'un à partir de la classe de base sans l'aide d' hiding
c'est une erreur.
Mais la plupart de la proposition a été abandonnée et seule l' final
et override
fonctionnalités ont été conservés, les "identificateurs avec une signification particulière" plutôt que sur les attributs.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.