Danke für die Antworten, die Motivation ist eine Klasse zu definieren, dass sich zB in einen Vektor stecken lässt, auf dem Stack erzeugt werden kann und sich einzelne Objekte trotzdem unterschiedlich verhalten. Das Ganze hat mit mit meinen Versuchen zu tun, einen Ersatz für das borlandspezifische __closure zu finden (was im Grunde ziemlich komfortable pointer-to-member-functions sind). Ich habe versucht, etwas ohne offensichtliche templates zu basteln, die beiden void* Zeiger in base sind Zeiger auf Objekte und member-funktionen bzw. Zeiger auf freie Funktionen, die auf statisch Template Funktionen in der abgeleiteten Klasse zeigen.
Habe den Versuch allerdings beerdigt, da haben schlauere Leute als ich viel mehr Gehirnschmalz investiert. Inzwischen bin ich bei boost::function angekommen und muss mich nur noch davon überzeugen lassen, dass unser C++ Compiler das auch ordentlich kann. Sah am Anfang nicht so aus, aber letzte Tests waren erfolgreich.
Edit:
Ja, der o.g. Code ist nicht lauffähig, es fehlt der Base Konstruktor mit zwei Aufrufparametern.