Outils pour utilisateurs

Outils du site


lang:c:syntaxe:heritage

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
lang:c:syntaxe:heritage [2017/08/08 17:10] – ↷ Liens modifiés en raison d'un déplacement. rootlang:c:syntaxe:heritage [2017/11/23 23:42] (Version actuelle) – supprimée root
Ligne 1: Ligne 1:
-====Méthodes statiques dans une interface==== 
-Normalement, c'est interdit mais apparemment, c'est possible en faisant du bricolage. 
  
-[[http://www.cheshirekow.com/wordpress/?p=55|Source]], {{ lang:c:syntaxe:heritage:static_interfaces_in_c_brain_dump.htm.maff |Archive}} 
- 
-L'interface : 
-<code cpp> 
-template < typename T > 
-class StaticInterface 
-{ 
-  public: 
-    StaticInterface() 
-    { 
-      int(*fooCheck)(int)   = T::foo; 
-      bool(*barCheck)(bool) = T::bar; 
-    } 
-}; 
-</code> 
- 
-Une implémentation de la classe : 
-<code cpp> 
-class DerivedClass : public StaticInterface<DerivedClass> 
-{ 
-  public: 
-    static int foo(int  param){ return 10; } 
-    static bool bar(bool param){ return 20; } 
-}; 
-</code> 
lang/c/syntaxe/heritage.1502205014.txt.gz · Dernière modification : 2017/08/08 17:10 de root