OOP Chapter 2 Lecture Notes 2021
OOP Chapter 2 Lecture Notes 2021
OOP Chapter 2 Lecture Notes 2021
Oriented
Programming
Using C++
Presented By
Unit Outcome
Develop relevant Friends functions to solve the given problem.
Write C++ Program to use array of given objects.
Write C++ Programs to create the given object using constructor.
Write program to delete the given object using destructor in C++ program.
Introduction
• Class: A class in C++ is the building block, that leads to Object-
Oriented programming. It is a user-defined data type, which
holds its own data members and member functions, which can
be accessed and used by creating an instance of that class.
• A C++ class is like a blueprint for an object.
For Example: Consider the Class of Cars. There may be many
cars with different names and brand but all of them will share
some common properties like all of them will have 4 wheels,
Speed Limit, Mileage range etc. So here, Car is the class and
wheels, speed limits, mileage are their properties.
• A Class is a user defined data-type which has data members
and member functions.
• Data members are the data variables and member functions are
the functions used to manipulate these variables and together
these data members and member functions defines the
properties and behavior of the objects in a Class
An Object is an instance of a Class. When a class is
defined, no memory is allocated but when it is
instantiated (i.e. an object is created) memory is allocated.
Defining Class and Declaring Objects
A class is defined in C++ using keyword class followed by
the name of class. The body of class is defined inside the
curly brackets and terminated by a semicolon at the end.
#include <iostream>
using namespace std;class Demo
{
private:
static int X; public:
static void fun()
{
cout <<"Value of X: " << X << endl;
}
};//defining
int Demo :: X =10;
int main()
{
Demo X; X.fun();
return 0;
}
Output :
Value of x : 10
Friend Function
A friend function of a class is defined outside that class'
scope but it has the right to access all private and
protected members of the class. Even though the
prototypes for friend functions appear in the class
definition, friends are not member functions.
Friend Function
#include <iostream>
using namespace std;
class Box
{ double width;
public:
friend void printWidth( Box box );
void setWidth( double wid ); }; // Member function definition
void Box::setWidth( double wid )
{ width = wid;
} // Note: printWidth() is not a member function of any class.
void printWidth( Box box )
{
/* Because printWidth() is a friend of Box, it can directly access any member of this class */
cout << "Width of box : " << box.width <<endl;
} // Main function for the program
int main()
{ Box box; // set box width without member function
box.setWidth(10.0);
// Use friend function to print the wdith.
printWidth( box );
return 0; }