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

C++ class, need to create c++ classes to store all pascal types in compiler...

need to create c++ classes to store all pascal types in compiler design.

Described the differences among a c++ struct & c++ class?, Described the di...

Described the differences among a C++ struct & C++ class? A: The default member & base class access specifies are distinct. It is one of the commonly misunderstood aspects of C+

Oops, write a c++ program to find the prime numbers

write a c++ program to find the prime numbers

Variable, what is local and global variable?give me some example to underst...

what is local and global variable?give me some example to understand better

Determine the current flowing by resistor, For the circuit shown in Figure,...

For the circuit shown in Figure, verify the p.d. across resistor R3. If the total resistance of the circuit is 100Ω, verify the current flowing by resistor R1. Find also the

Lexicographically preceding permutation, Given an integer n and a permutati...

Given an integer n and a permutation of numbers 1, 2 ... , n-1, n write a program to print the permutation that lexicographically precedes the given input permutation. If the given

Command-line arguments, Command-line arguments are passed into programs usi...

Command-line arguments are passed into programs using the arguments of main(). Here's a quick example, for a program called by typing "progname file.txt 1 2.7": #include #incl

Linux driver and linux, Project Description: I´ve a need linux programmi...

Project Description: I´ve a need linux programming job. if you are interested, Skills required are C Programming, PCB Layout, Embedded Software, Python, Software Architecture

Explain variables, Variables Information stored in a variable can alter...

Variables Information stored in a variable can alter in the course of the program. The type used in the definition explains the kind of information the symbol can store. Variab

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