Advertisement
cyter

universal function pointer

May 7th, 2018
554
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.56 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3. using std::cout; using std::endl;
  4. using std::string;
  5.  
  6. template<typename T>
  7. T usqr(T x);
  8.  
  9. template<typename T>
  10. void print(T whatever);
  11.  
  12. template<typename T>
  13.     T (*uptr)(T t) = &usqr;
  14.  
  15. int main(int argc, char* argv[]){  
  16.     print(uptr(34));//integer
  17.     print(uptr(39.995));// a float or double
  18.     print(uptr(69440898593));//a long long
  19.     return 0;
  20. }
  21.  
  22. //universal square root function
  23. template<typename T>
  24. T usqr(T x)
  25. {
  26.     return x*x;
  27. }
  28.  
  29. template<typename T>
  30. void print(T whatever)
  31. {
  32.     cout<< whatever <<endl;
  33. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement