Advertisement
Guest User

Untitled

a guest
May 23rd, 2015
213
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.30 KB | None | 0 0
  1. /**
  2. * Copyright 2015 Natanael Russo <natanaelrusso18@hotmail.com>
  3. *
  4. * Permission is hereby granted, free of charge, to any person obtaining
  5. * a copy of this software and associated documentation files (the
  6. * "Software"), to deal in the Software without restriction, including
  7. * without limitation the rights to use, copy, modify, merge, publish,
  8. * distribute, sublicense, and/or sell copies of the Software, and to
  9. * permit persons to whom the Software is furnished to do so, subject to
  10. * the following conditions:
  11. *
  12. * The above copyright notice and this permission notice shall be
  13. * included in all copies or substantial portions of the Software.
  14. *
  15. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  16. * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  17. * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  18. * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
  19. * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
  20. * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
  21. * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  22. **/
  23.  
  24. #include <iostream>
  25. using namespace std;
  26.  
  27. int Sum( int n1, int n2 )
  28. {
  29. int r = n1 + n2;
  30.  
  31. return r;
  32. }
  33.  
  34. int main()
  35. {
  36. // A function pointer called pSum1 that receives two int parameters and returns an int
  37. int (*pSum1)(int,int);
  38.  
  39. pSum1 = Sum;
  40.  
  41. cout<<"1. Use the function pointer like if was a normal function: "<<pSum1(3,4)<<endl<<endl;
  42. cout<<"2. Use the function pointer like if was a function pointer: "<<(*pSum1)(4,4)<<endl<<endl;
  43.  
  44. // A type of a function pointer
  45. typedef int (*PSum2)(int,int);
  46.  
  47. PSum2 pSum2;
  48.  
  49. pSum2 = Sum;
  50.  
  51. // This is the same like the other example but the difference is the pointer function type
  52. cout<<"1. Use the function pointer like if was a normal function: "<<pSum2(3,4)<<endl<<endl;
  53. cout<<"2. Use the function pointer like if was a function pointer: "<<(*pSum2)(4,4)<<endl<<endl;
  54.  
  55. // In this case I make a type definition
  56. typedef int Sum3(int,int);
  57.  
  58. Sum3* pSum3;
  59.  
  60. pSum3 = Sum;
  61.  
  62. cout<<"1. Use the function pointer like if was a normal function: "<<pSum3(3,4)<<endl<<endl;
  63. cout<<"2. Use the function pointer like if was a function pointer: "<<(*pSum3)(4,4)<<endl<<endl;
  64.  
  65. return 0;
  66. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement