PSyton, попытался расширить с помощь шаблонов - умудрился вышибить компайлер с ексепшеном

послезавтра продолжу эксперимент - сделаю без расширения
Flexz, не это то что надо. Я тоже наткнулся на несколько решений - но чтобы их исползовать надо понять как - а весь boost написан так, что мне проще написать самому, чем разобраться как его пользовать.
--------------------------------
Сделал. В интерпретаторе хранятся пойнтеры на базисный класс, темплейтом сделал регистрацию с разным количеством входных переменных, и промежуточный класс тоже темплейтный. Вызывается виртуальные метод "Call" базисного класса, и из-за инициации наследников подходящими методами все работает.
Таким образом вызов выглядит так:
Код:
C1 c1;
C2 c2;
Interpreter i;
i.Register<C1> ( &c1,
"m11",&C1::m1,
"m12",&C1::m2,
NULL );
i.Register<C2> ( &c2,
"m21",&C2::m1,
"m22",&C2::m2,
"m23",&C2::m4,
NULL );
i.Call("m23",12);
Огромное спасибо всем участникам дискуссии.