passing parameters by references

2
http: //www.tut o ri alspoint. co m/cplusplus/passing _parameters _by_refe rence s.htm Copyright © tutorialspoint.com PASSING PARAMET ERS BY REFERENCES IN C++  We have discuss e d h ow w e im pl e m e n t c al l by re ference  co n ce pt u s i n g poin ters . He re i s an oth e r e xam pl e of call by re fere n ce wh i ch makes u se of C++ re fere nce : #include <iostream> using namespace std ;  // function declaration void swap(int& x, int& y);  int main () {  // local variable declaration:  int a = 100;  int b = 200;  cout << "Before swap, value of a :" << a << endl;  cout << "Before swap, value of b :" << b << endl;  /* calling a function to swap the values.*/  swap(a, b);  cout << "After swap, value of a :" << a << endl;  cout << "After swap, value of b :" << b << endl;  return 0; }  // function definition to swap the values. void swap(int& x, int& y) {  int temp;  temp = x; /* save the value at address x */  x = y; /* put y into x */  y = temp; /* put x into y */  return; }  When th e abo ve c ode i s compi led an d exe cut e d, i t produce s th e foll owin g re s u lt : Before swap, value of a :100 Before swap, value of b :200 After swap, value of a :200 After swap, value of b :100

Upload: roderick-bennett

Post on 13-Apr-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Passing Parameters by References

7/26/2019 Passing Parameters by References

http://slidepdf.com/reader/full/passing-parameters-by-references 1/1

http://www.tuto rialspoint.co m/cplusplus/passing_parameters_by_refe rence s.htm Copyright © tutorialspoint.com

PASSING PARAMETERS BY REFERENCES IN C++

 We have discussed how we implement call by reference  conce pt using pointers. Here is another example of call by reference which makes use of C++ reference :

#include <iostream>

using namespace std; 

// function declaration

void swap(int& x, int& y);

 

int main ()

{

  // local variable declaration:

  int a = 100;

  int b = 200;

 

cout << "Before swap, value of a :" << a << endl;

  cout << "Before swap, value of b :" << b << endl;

 

/* calling a function to swap the values.*/  swap(a, b);

 

cout << "After swap, value of a :" << a << endl;

  cout << "After swap, value of b :" << b << endl;

 

return 0;

}

 

// function definition to swap the values.

void swap(int& x, int& y)

{

  int temp;

  temp = x; /* save the value at address x */

  x = y;  /* put y into x */

  y = temp; /* put x into y */

 

return;

}

 When the above code is compiled and exe cuted, it produces the following result:

Before swap, value of a :100

Before swap, value of b :200

After swap, value of a :200

After swap, value of b :100