fork download
  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4.  
  5. template <template <class T>class Agent, class Listener>
  6. class App {
  7. vector<Agent<Listener>> agents;
  8. public:
  9. App() : agents(10) {}
  10. };
  11.  
  12. template <class T>
  13. class MyAgent {
  14. vector<T> listeners;
  15. public:
  16. MyAgent() : listeners(10) {}
  17. };
  18.  
  19. class MyListener {
  20. static int x;
  21. public:
  22. MyListener() { cout<<"L"<<++x<<endl;}
  23. };
  24. int MyListener::x;
  25.  
  26. int main() {
  27. App<MyAgent, MyListener> app;
  28. return 0;
  29. }
Success #stdin #stdout 0s 15240KB
stdin
Standard input is empty
stdout
L1
L2
L3
L4
L5
L6
L7
L8
L9
L10
L11
L12
L13
L14
L15
L16
L17
L18
L19
L20
L21
L22
L23
L24
L25
L26
L27
L28
L29
L30
L31
L32
L33
L34
L35
L36
L37
L38
L39
L40
L41
L42
L43
L44
L45
L46
L47
L48
L49
L50
L51
L52
L53
L54
L55
L56
L57
L58
L59
L60
L61
L62
L63
L64
L65
L66
L67
L68
L69
L70
L71
L72
L73
L74
L75
L76
L77
L78
L79
L80
L81
L82
L83
L84
L85
L86
L87
L88
L89
L90
L91
L92
L93
L94
L95
L96
L97
L98
L99
L100