Вывести параметры шаблона для параметра шаблона std::variantC++

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

Сообщение Anonymous »

У меня есть класс шаблона, который принимает std::variant в качестве параметра шаблона:

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

template
class X
{
};

X x;
Я хочу добавить ограничение для T, которое должно быть получено из std::variant.
Затем я хочу извлечь параметры шаблона этого варианта чтобы использовать их внутри класса.
Например:

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

template = true>
class X
{
std::tuple t; // std::tuple
};

X x;
Проблема в том, что я не могу получить эти параметры int, float из типа вариант.
Есть ли способ сделать это в C+ +17?
Этот вариант происходит от типа возвращаемого значения функции.
Из-за этого я не могу вместо этого заменить его на что-то вроде параметров варианта (чтобы принять int, float напрямую).

Подробнее здесь: https://stackoverflow.com/questions/785 ... -parameter
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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