Базовый класс:
template<typename T>
class A{
public:
virtual ~A(){}
A(int){printf("base class\n");}
};
Производный:
class B:public A<char*>{
public:
B(int var):A<char*>(var){printf("derived class\n");}
};
Можно ли избежать указания A<char*>(var) в списке инициализации конструктора производного класса? Т.е. сделать примерно так (именно так не работает):
B(int var):A(var){}
В <char*> из этого примера ничего ужасного нет, но у меня несколько параметров, причем один из них сам состоит из нескольких шаблонов, так что копипаста разрастется нехило.
PS. Курение книги по шаблонам с++ в ТУДУ, так что не предлагать.