В следующем коде шаблон класса HANDLER должен принимать один параметр шаблона F и один параметр шаблона шаблона P. Базовый класс IMPLEMENTATION зависит от параметров R и S. При объявлении шаблона класса HANDLER я должен передать аргументы шаблона F,P, R и S индивидуально в списке шаблонов «HANDLER» (см. конструктор класса BAR). Нет ли способа передать шаблон класса «P» как один параметр в списке шаблонов «HANDLER» (см. комментарий ниже конструктора класса «BAR») и при этом рассматривать «R» и «S» как аргументы шаблона в классе «HANDLER»? Заранее спасибо, я все еще новичок в шаблонах C++.
template class IMPLEMENTATION{
public:
};
template class HANDLER : public IMPLEMENTATION{
private:
F object;
public:
HANDLER(const F& object) : object(object){}
};
template class BAR{
private:
IMPLEMENTATION* implementation;
public:
template BAR(const F& object):implementation(new HANDLER(object)){}
/*template BAR(const F& object):implementation(new HANDLER(object)){}*/
};
Подробнее здесь: https://stackoverflow.com/questions/790 ... argument-c