Explicit conversion sequence::convert: различия между версиями
Перейти к навигации
Перейти к поиску
(Новая страница: «{{function_begin |template <class U> static constexpr sequence_element<0> convert(U&& arg);|{{interface_implementation_base::convert brief}}}} {{function temp…») |
|||
Строка 1: | Строка 1: | ||
{{function_begin |template <class U> | {{function_begin |template <class U> | ||
static constexpr sequence_element<0> convert(U&& arg);|{{ | static constexpr sequence_element<0> convert(U&& arg);|{{explicit_conversion_sequence::convert brief}}}} | ||
{{function template paramlist begin}} | {{function template paramlist begin}} | ||
{{function template paramlist add|U|Тип входного параметра, преобразуемого методом.}} | {{function template paramlist add|U|Тип входного параметра, преобразуемого методом.}} |
Текущая версия на 19:02, 10 декабря 2017
template <class U>
static constexpr sequence_element<0> convert(U&& arg);
Осуществляет последовательное явное преобразование типов для своего аргумента в соответствии с параметрами шаблона explicit_conversion_sequence.
- Параметры шаблона
U Тип входного параметра, преобразуемого методом. - Параметры
arg Универсальная ссылка на входной объект, преобразуемый методом. - Возвращаемое значение:
- Результат явного преобразования.
Пусть задана специализация typedef explicit_conversion_sequence<T1, T2, ..., TN> instantiation_type;
, определенная для некоторых типов T1, T2, ...TN, а также некоторый объект x. Тогда применение метода convert над этим объектом:
instantiation_type::convert(x);
будет эквивалентно последовательному преобразованию:
T1(T2(...TN(x)...));