2010-10-27 15 views

Antwort

4

Ich denke, Sie beziehen sich auf CRTP. Siehe auch here

+0

@Thomson Tan: Beachten Sie sorgfältig @ GMans Punkt über statischen Polymorphismus. Das ist ein wichtiger Punkt. Es ermöglicht das Simulieren von virtuellen Funktionsaufrufen von der Basisklasse ohne den Overhead von virtuellen Funktionen (wenn das wichtig ist) – Chubsdad

7

Es ist die Curiously Recurring Template Muster, und ermöglicht statische Polymorphie.

Dies ist nützlich, wenn Sie einer bestimmten Klasse Funktionen hinzufügen möchten, das Dienstprogramm jedoch in einem allgemeinen Fall verwendet werden soll. Indem Sie das Dienstprogramm von einem Template-Parameter abhängig machen und verwenden, können Sie beides erreichen.