fork download
  1. import std.stdio;
  2.  
  3. class Test1
  4. {
  5. public:
  6. static
  7. void m1()
  8. {
  9. writeln("static Test1.m1()");
  10. }
  11.  
  12. void m2()
  13. {
  14. writeln("Test1.m2()");
  15. }
  16. }
  17.  
  18. void m3()
  19. {
  20. writeln("m3()");
  21. }
  22.  
  23. void main()
  24. {
  25. auto t = new Test1;
  26. // void delegate() d1 = &(Test1.m1); // ng staticメソッドはdelegateに代入できない
  27. void function() d1 = &(Test1.m1); // ok
  28. // void function() d2 = &(t.m2); // ng classのメソッドはfunctionに代入できない
  29. void delegate() d2 = &(t.m2); // ok
  30. void function() d3 = &m3;
  31.  
  32. d1();
  33. d2();
  34. d3();
  35. }
  36.  
Success #stdin #stdout 0.01s 2120KB
stdin
Standard input is empty
stdout
static Test1.m1()
Test1.m2()
m3()