Outils pour utilisateurs

Outils du site


lang:c:syntaxe:heritage

Ceci est une ancienne révision du document !


Méthodes statiques dans une interface

Normalement, c'est interdit mais apparemment, c'est possible en faisant du bricolage.

Source, Archive

L'interface :

template < typename T >
class StaticInterface
{
  public:
    StaticInterface()
    {
      int(*fooCheck)(int)   = T::foo;
      bool(*barCheck)(bool) = T::bar;
    }
};

Une implémentation de la classe :

class DerivedClass : public StaticInterface<DerivedClass>
{
  public:
    static int foo(int  param){ return 10; }
    static bool bar(bool param){ return 20; }
};
lang/c/syntaxe/heritage.1502205014.txt.gz · Dernière modification : 2017/08/08 17:10 de root