Избегайте шаблонного беспорядка при импорте конструкторов базового класса с сильно шаблонным базовым классомC++

Программы на C++. Форум разработчиков
Anonymous
Избегайте шаблонного беспорядка при импорте конструкторов базового класса с сильно шаблонным базовым классом

Сообщение Anonymous »

Это просто короткий запрос, если это вообще возможна каким -то образом импортировать конструкторы базового класса без всего шаблона. Рассмотрим этот пример, где я наследую от шаблон STD :: variant :

Код: Выделить всё

template 
class JSON : public std::variant
{
public:

using std::variant::variant;
};
< /code>
Вы можете видеть, что есть немного раздувания, что делает его довольно нечитаемым и подверженным ошибкам. Можно ли этого избежать? Причина, по которой я спрашиваю, заключается в том, что я думаю, что однажды услышал, что вы можете каким -то образом пропустить параметры шаблона в шаблонном классе, поскольку компилятор может подразумевать то, что вы имели в виду. 
[b] пояснение [/b] 
, по сути, я просто ищу способ не писать один и тот же шаблон  дважды . Я пытался использовать вариант :: variant 
, который не работает. Но могут быть и другие способы обойти это, и любые подсказки высоко ценится!

Подробнее здесь: https://stackoverflow.com/questions/760 ... -templated

Вернуться в «C++»