Advertisement
Guest User

Untitled

a guest
Oct 20th, 2019
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.36 KB | None | 0 0
  1. template<class T, class R, class... Args>
  2. struct mem_fn_wrap {
  3. R (T::* pm)(Args...);
  4. T& t;
  5.  
  6. mem_fn_wrap(R (T::* pm)(Args...), T& t) : pm(pm), t(t) {}
  7.  
  8. R operator()(Args&&... args) {
  9. return (t.*pm)(std::forward<Args>(args)...);
  10. }
  11. };
  12.  
  13. template<class T, class R, class... Args>
  14. mem_fn_wrap(R (T::*)(Args...), T&) -> mem_fn_wrap<T, R, Args...>;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement