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

Create a client program tracker, This project simulates an application call...

This project simulates an application called tracker for the Department of Transportation (DOT) in which highway traffic data is accumulated in real time using various sensing equi

Explain about the variables in c language, Explain about the Variables in c...

Explain about the Variables in c language? The Variable is an identifier that is used to represent some specified kind of information within a designated portion of the program

Introduction to c programming, How would you print the values of the variab...

How would you print the values of the variables words and lines so they appear in the form: There were 6040 words and 680 lines. Here, 6040 and 680 represent the values of the two

C program for merge two strings , v\:* {behavior:url(#default#VML);} o\:* ...

v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} Normal 0

Change to palindrome, convert string s into palindrome by doing character r...

convert string s into palindrome by doing character replacement

Should i call a destructor explicitly on a local variable?, Should I call a...

Should I call a destructor explicitly on a local variable?

Area under curve, Write a program to find the area under the curve y = f(x)...

Write a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b.     #include float start

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