Explain call by reference, C/C++ Programming

Assignment Help:

Call by Reference

Passing variables(parameters) to a function in C can be done in two ways - pass by value, also called as call by value and pass by address or also known as call by address. C++ though , gives one more way to call a function - call by reference. In call by value , a copy of the actual contents of the variables is passed to the function. In this case, alters made to the formal variable , as they are called, are not reflected back in the calling function. Passing an address permits changes to be made directly to the memory, which are occupied by the actual variable.

Though, a call by address requires the formal variable to be considered as pointer and therefore the indirection operator has to be used with them. A reference on the other hand, is another name, for a previously explained variable. In other words, after a reference is explained for a particular variable, using its original name as well as the reference can refer to the variable. Hence, a reference is nothing but an alias.

 Thus not passing a copy (call by value) saves time and is efficient. It does not have to make a temporary variable /. And not passing the address(call by address), eliminates the use of pointers in the called functions. But, at the same time, the changes made to a formal variable , using its reference or alias can be reflected back in the calling function.

 


Related Discussions:- Explain call by reference

Procedure-oriented programming, E v o l u t i o n of Software: ...

E v o l u t i o n of Software: In the past stage of programming the software's were developed in Machine language Using binary numbers 1's and 0's.  Later it convert

Explain the default constructor and destructor, The default Constructor and...

The default Constructor and Destructor If you fail to write a constructor and destructor function,  the compiler automatically supplies them for you. These functions have publi

Want an ea project for jack bsher, Want an EA project for Jack Bsher Pro...

Want an EA project for Jack Bsher Project Description: New EA game Skills required   Android, C++ Programming, PHP, Metatrader, SQL

Loops, how to get plus asterisk pattern

how to get plus asterisk pattern

Using nested if statement, write a program in c/C++ using nested if stateme...

write a program in c/C++ using nested if statement for calculating the average marks and grades of 5 subjects

Program to make another type of mask, Write a function that has int paramet...

Write a function that has int parameter n, makes another type of mask having n bit 1's from the left most bit and 32- n bit 0's next. The mask is called netmask in this seminar, an

Define polymorphism?, Define Polymorphism? A: Polymorphism let a client ...

Define Polymorphism? A: Polymorphism let a client to treat distinct objects in the similar way even if they were developed from distinct classes and exhibit different behaviors.

Constructor and destructor function with derived classes, Constructor and D...

Constructor and Destructor function with derived classes If there are constructors included in the base class and the derived class, the compiler automatically calls both of th

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd