Function template make_overloaded_function
boost::make_overloaded_function — Make an overloaded function object without explicitly specifying the function types.
Synopsis
template<typename F1, typename F2, ... >
overloaded_function< __function_type__< F1 >, __function_type__< F2 >,...>
make_overloaded_function(F1 f1, F2 f2, ...);
Description
Этот шаблон функций создает и возвращает объект Overloaded_function
, который перегружает все указанные функции f1
, f2
и т.д.
Типы функций определяются внутренне из типов параметров шаблона, поэтому они не должны быть явно указаны. Поэтому этот шаблон функций обычно имеет более лаконичный синтаксис по сравнению с Overloaded_function
. Это особенно полезно, когда явного типа возвращаемого перегруженная_функция
объект не должен быть известен (например, при использовании с Boost). Тип BOOST_AUTO
, C++11 auto
, или когда перегруженный объект функции обрабатывается с помощью параметра шаблона функции, см. раздел Учебник .
Максимальное количество функций для перегрузки выдается макроконфигурацией BOOST_FUNCTIONAL_OVERLOADED_FUNCTION_CONFIG_OVERLOAD_MAX
.
Примечание: В этой документации __function_type___5> является заполнителем для символа, специфичного для реализации этой библиотеки.
См.: Учебник, Перегруженная_функция
, BOOST_FUNCTIONAL_OVERLOAD_FUNCTION_CONFIG_OVERLOAD_MAX
.