Variadic template

http://dbpedia.org/resource/Variadic_template

In computer programming, variadic templates are templates that take a variable number of arguments. Variadic templates are supported by C++ (since the C++11 standard), and the D programming language. rdf:langString
In programmazione, i template variadici sono template che accettano un numero variabile di argomenti. I template variadici sono supportati in C++ (dallo standard 11) e in D. La necessità di dover gestire un numero sconosciuto di elementi è un problema comune. Per esempio, una funzione di segnalazione degli errori può accettare tra zero e dieci argomenti, una matrice può avere una o dieci dimensioni, e una tupla può avere da zero a dieci elementi. Notare che nel primo e nell'ultimo esempio gli elementi potrebbero non essere necessariamente dello stesso tipo. Nella maggior parte delle situazioni sarebbe preferibile non gestire separatamente ciascun caso. L'ideale sarebbe che un singolo brano di codice gestisse i casi di un elemento, due elementi, tre elementi e così via. rdf:langString
可变参数模板是模板编程时,模板参数(template parameter)的个数可变的情形。 已经支持可变参数模板的编程语言有D语言与C++(自C++11标准)。 rdf:langString
В програмуванні, варіативний шаблон — шаблон зі змінною кількістю аргументів. Варіативні шаблони підтримуються мовою C++ (починаючи з стандарту C++11), та мовою програмування D. Синтаксис варіативного шаблону в мові C++11 в загальному випадку наступний: template class tuple; // нуль або більше аргументів Якщо потрібно заборонити використання шаблону без параметрів, то використовують наступний підхід, що вимагає використання як мінімум одного параметра: template class tuple; // один або більше аргументів rdf:langString
Вариативный шаблон или шаблон с переменным числом аргументов (англ. Variadic Template) в программировании — шаблон с заранее неизвестным числом аргументов, которые формируют один или несколько так называемых пакетов параметров. Вариативный шаблон позволяет использовать параметризацию типов там, где требуется оперировать произвольным количеством аргументов, каждый из которых имеет произвольный тип. Он может быть очень удобен в тех ситуациях, когда сценарий поведения шаблона может быть обобщён на неизвестное количество принимаемых данных. rdf:langString
rdf:langString Template variadico
rdf:langString Variadic template
rdf:langString Вариативный шаблон
rdf:langString 可变参数模板
rdf:langString Варіативний шаблон
xsd:integer 21191343
xsd:integer 1029853515
rdf:langString In computer programming, variadic templates are templates that take a variable number of arguments. Variadic templates are supported by C++ (since the C++11 standard), and the D programming language.
rdf:langString In programmazione, i template variadici sono template che accettano un numero variabile di argomenti. I template variadici sono supportati in C++ (dallo standard 11) e in D. La necessità di dover gestire un numero sconosciuto di elementi è un problema comune. Per esempio, una funzione di segnalazione degli errori può accettare tra zero e dieci argomenti, una matrice può avere una o dieci dimensioni, e una tupla può avere da zero a dieci elementi. Notare che nel primo e nell'ultimo esempio gli elementi potrebbero non essere necessariamente dello stesso tipo. Nella maggior parte delle situazioni sarebbe preferibile non gestire separatamente ciascun caso. L'ideale sarebbe che un singolo brano di codice gestisse i casi di un elemento, due elementi, tre elementi e così via.
rdf:langString Вариативный шаблон или шаблон с переменным числом аргументов (англ. Variadic Template) в программировании — шаблон с заранее неизвестным числом аргументов, которые формируют один или несколько так называемых пакетов параметров. Вариативный шаблон позволяет использовать параметризацию типов там, где требуется оперировать произвольным количеством аргументов, каждый из которых имеет произвольный тип. Он может быть очень удобен в тех ситуациях, когда сценарий поведения шаблона может быть обобщён на неизвестное количество принимаемых данных. Вариативные шаблоны поддерживаются в C++ (начиная со стандарта C++11) и D.
rdf:langString В програмуванні, варіативний шаблон — шаблон зі змінною кількістю аргументів. Варіативні шаблони підтримуються мовою C++ (починаючи з стандарту C++11), та мовою програмування D. Синтаксис варіативного шаблону в мові C++11 в загальному випадку наступний: template class tuple; // нуль або більше аргументів Якщо потрібно заборонити використання шаблону без параметрів, то використовують наступний підхід, що вимагає використання як мінімум одного параметра: template class tuple; // один або більше аргументів Варіативні шаблони також можуть застосовуватися з функціями: template void printf(const std::string &str_format, Params... parameters); Часто використовують рекурсивний виклик варіативних шаблонів. Самі варіаційні параметри не є доступними для реалізації функції або класу. Тому для реалізації заміни звичного printf через варіативний шаблон у C++11 типовим підходом буде такий: // базовий варіантvoid printf(const char *s){ while (*s) { if (*s == '%') { if (*(s + 1) == '%') { ++s; } else { throw std::runtime_error("неправильний формат рядка: відсутні аргументи"); } } std::cout << *s++; }}// рекурсивнийtemplatevoid printf(const char *s, T value, Args... args){ while (*s) { if (*s == '%') { if (*(s + 1) == '%') { ++s; } else { std::cout << value; s += 2; // зрозуміло, що це працюватиме лише з 2-х символьними специфікаторами ( %d, %f, і т.п. ); але не з %5.4f і т.п. printf(s, args...); // буде викликатися навіть для *s рівного nullptr, але не робитиме нічого, просто ігноруватиме аргументи return; } } std::cout << *s++; } } Зауважте, що побудована з застосуванням варіативного шаблону версія printf викликає себе рекурсивно або (коли список аргументів args… буде порожній) викликає базовий варіант.
rdf:langString 可变参数模板是模板编程时,模板参数(template parameter)的个数可变的情形。 已经支持可变参数模板的编程语言有D语言与C++(自C++11标准)。
xsd:nonNegativeInteger 13403

data from the linked data cloud