home *** CD-ROM | disk | FTP | other *** search
/ Reverse Code Engineering RCE CD +sandman 2000 / ReverseCodeEngineeringRceCdsandman2000.iso / RCE / Ebooks / Thinking in C++ V2 / C03 / PassReference.cpp < prev    next >
Encoding:
C/C++ Source or Header  |  2000-05-25  |  564 b   |  24 lines

  1. //: C03:PassReference.cpp
  2. // From Thinking in C++, 2nd Edition
  3. // Available at http://www.BruceEckel.com
  4. // (c) Bruce Eckel 1999
  5. // Copyright notice in Copyright.txt
  6. #include <iostream>
  7. using namespace std;
  8.  
  9. void f(int& r) {
  10.   cout << "r = " << r << endl;
  11.   cout << "&r = " << &r << endl;
  12.   r = 5;
  13.   cout << "r = " << r << endl;
  14. }
  15.  
  16. int main() {
  17.   int x = 47;
  18.   cout << "x = " << x << endl;
  19.   cout << "&x = " << &x << endl;
  20.   f(x); // Looks like pass-by-value, 
  21.         // is actually pass by reference
  22.   cout << "x = " << x << endl;
  23. } ///:~
  24.