Ziehen Sie in Erwägung, allgemeine Teile in eine Basisklasse zu verschieben:
%Vor% Sie können f1
sogar in der abgeleiteten Klasse überschreiben. Wenn Sie etwas ausgefalleneres tun möchten (einschließlich des Aufrufs von f2
von f1
code in der Basisklasse), sehen Sie sich das CRTP .
Wenn wir Spezialisierungen für eine Template-Klasse deklarieren, müssen wir auch alle seine Member definieren, auch diejenigen, die exakt der generischen Template-Klasse entsprechen, da es keine Vererbung von Mitgliedern der generischen Vorlage gibt Spezialisierung. Also, in Ihrer Spezialisierung müssen Sie auch void f1();
implementieren.
Tags und Links c++ templates template-specialization partial-specialization