fork(2) download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. template<class D>
  5. class Base {
  6. public:
  7. D a;
  8.  
  9. void doWork(D b) {
  10. a += b;
  11. }
  12. };
  13.  
  14. class DerA : public Base<int> {
  15. // Make "a" an int
  16. };
  17.  
  18. class DerB : public Base<float> {
  19.  
  20. };
  21.  
  22.  
  23. int main() {
  24.  
  25. DerA obj1;
  26. DerB obj2;
  27.  
  28. obj1.a = 22;
  29. obj2.a = 2.2f;
  30.  
  31. obj1.doWork(11);
  32. obj2.doWork(1.1f);
  33.  
  34. cout << obj1.a << endl;
  35. cout << obj2.a;
  36.  
  37. return 0;
  38. }
Success #stdin #stdout 0s 3296KB
stdin
Standard input is empty
stdout
33
3.3