fork(4) download
  1. #include <iostream>
  2. #include <functional>
  3. #include <utility>
  4.  
  5. struct Foo {
  6. template <typename Function, typename... Args>
  7. Foo(Function&& func, Args&&... args) {
  8. auto f = std::bind(std::forward<Function>(func), std::forward<Args>(args)...);
  9. func_ = [f] { f(); };
  10. }
  11. void evaluate() { func_(); }
  12. std::function<void()> func_;
  13. };
  14.  
  15. void printValues(int x, double y, const char* charArr) {
  16. std::cout << x << " " << y << " " << charArr << std::endl;
  17. }
  18.  
  19. int main() {
  20. Foo f(printValues, 5, 2.0, "Test");
  21. f.evaluate();
  22. }
Success #stdin #stdout 0s 3476KB
stdin
Standard input is empty
stdout
5 2 Test