What is friend functions, C/C++ Programming

Assignment Help:

Friend Functions

One of the major features of OOP is information hiding. A class encapsulates data and methods to operate on that data in a single unit. The data from the class can be accessed only by member functions of the class. This restricted access not only hides the execution details of the methods and the data structure, it also saves the data from any possible misuse, accidental or otherwise. Though, the concept of data encapsulation sometimes takes information hiding too far. There are situations where a rigid and controlled access leads to inconvenience and hardships.

For example, consider a case where a function is needed to operate on object of two different classes. This function cannot be made a member of both the classes. What can be done is that a function can be explained outside both the classes and made to operate on both. That is, a function not belonging to either, but able to access both. Such a function is known as a friend function. In other words, a friend function is a non-member function, which has access to a class's private members. It is like allowing access to one's personal belongings to a friend.

 


Related Discussions:- What is friend functions

Describe processing an array, Describe Processing an array? The Single ...

Describe Processing an array? The Single operations which involve complete arrays are not permitted in C language. therefore if a and b are similar arrays (for example same dim

Class, array of class objects and single inheritance

array of class objects and single inheritance

, Question 1 / 1 You have an N x N chessboard and you wish to place N king...

Question 1 / 1 You have an N x N chessboard and you wish to place N kings on it. Each row and column should contain exactly one king, and no two kings should attack each other (two

Explain the type conversion in expressions in c language, Explain The Type ...

Explain The Type Conversion in Expressions in c language? When variables and constants of different types are used in an expression they are all converted to same type. The com

Implementation of the definition class - c++ program, Implementation of the...

Implementation of the Definition class: void Definition::put_word(char *s) {    word = new char[strlen(s)+1];    strcpy(word,s);    nmeanings = 0; }   voi

Compiler design, Compiler Design - Limit In The Method Instructions

Compiler Design - Limit In The Method Instructions

Define the relational operator in c language, Define the Relational Operato...

Define the Relational Operator in c language? The Relational operators refer to the relationships that values can have with one another and they are used to compare two operand

Tells the operators one can override; which operators , Q:  Tells the opera...

Q:  Tells the operators one can override; which operators should he override? A: Bottom line: don't puzzle your users. Remember the reason of operator overloading: to decreas

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