Function apply_visitor /*three or more variant parameters*/
boost::apply_visitor /*three or more variant parameters*/
 
Synopsis
template<typename MultiVisitor, typename Variant1, typename Variant2, 
         typename Variant3> 
  typename MultiVisitor::result_type OR decltype(auto) 
  apply_visitor (MultiVisitor & visitor, 
                                                     Variant1 & operand1, 
                                                     Variant2 & operand2, 
                                                     Variant3 & operand3, 
                                                     ... other_operands);
template<typename MultiVisitor, typename Variant1, typename Variant2, 
         typename Variant3> 
  typename MultiVisitor::result_type OR decltype(auto) 
  apply_visitor (const MultiVisitor & visitor, 
                                                     Variant1 & operand1, 
                                                     Variant2 & operand2, 
                                                     Variant3 & operand3, 
                                                     ... other_operands);
Description
Позволяет компилировать проверенное временем типобезопасное приложение данного посетителя к содержанию данного варианта, гарантируя, что все типы обрабатываются посетителем. Смотрите<apply_visitor>для получения дополнительной информации.