fork download
  1. #include <functional>
  2.  
  3. struct A
  4. {
  5. A(int)
  6. {}
  7. };
  8.  
  9. void f(std::function<void(void*)> fn)
  10. {
  11. A a(0);
  12. fn(&a);
  13. }
  14.  
  15. int main()
  16. {
  17. int n = 0;
  18. auto fn = [&](void* p)
  19. {
  20. //
  21. // error C2664: 'void f(void (__cdecl *)(void *))' :
  22. // cannot convert parameter 1 from
  23. // 'main::<lambda_b20f735b061d78dbb0f2f653ecbb482f>'
  24. // to 'void (__cdecl *)(void *)'
  25. //
  26. new (p) A(n);
  27. };
  28.  
  29. f(fn);
  30. }
  31.  
Success #stdin #stdout 0s 3468KB
stdin
Standard input is empty
stdout
Standard output is empty