Глядя на реализацию std::reference_wrapper
hereРеализация станд :: reference_wrapper
Конструкторы и операторы очевидны для меня, но я не понял эту часть
template< class... ArgTypes >
typename std::result_of<T&(ArgTypes&&...)>::type
operator() (ArgTypes&&... args) const {
return std::invoke(get(), std::forward<ArgTypes>(args)...);
}
Может кто-то упростить его я ... был бы оценен
Редактировать: и было бы здорово дать полезный пример для operator()
of std::reference_wrapper
В принципе, он направляет 'operator()' рефери Functor. – Jarod42