0% found this document useful (0 votes)
126 views4 pages

C++ Classes and Objects

Classes in C++ are user-defined data types that group data and functions together to represent an object. A class acts as a blueprint to create objects with common properties and behaviors. For example, a Car class could define properties like wheels and speed limit that are shared among all car objects. Objects are instances of a class that allocate memory at runtime. Classes are defined using the class keyword and objects are declared by specifying a class name and object name. Member functions and data can then be accessed using the dot operator with the object name.

Uploaded by

All Tvwnz
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
0% found this document useful (0 votes)
126 views4 pages

C++ Classes and Objects

Classes in C++ are user-defined data types that group data and functions together to represent an object. A class acts as a blueprint to create objects with common properties and behaviors. For example, a Car class could define properties like wheels and speed limit that are shared among all car objects. Objects are instances of a class that allocate memory at runtime. Classes are defined using the class keyword and objects are declared by specifying a class name and object name. Member functions and data can then be accessed using the dot operator with the object name.

Uploaded by

All Tvwnz
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 4

C++ Classes and Objects

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.

• In the above example of class Car, the data member will be speed limit, mileage etc and
member functions can be apply brakes, increase speed etc.

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.

Declaring Objects: When a class is defined, only the specification for the object is defined; no memory
or storage is allocated. To use the data and access functions defined in the class, you need to create
objects.

Syntax:

ClassName ObjectName;

Accessing data members and member functions: The data members and member functions of class can
be accessed using the dot(‘.’) operator with the object. For example if the name of object is obj and you
want to access the member function with the name printName() then you will have to
write obj.printName() .

Accessing Data Members

The public data members are also accessed in the same way given however the private data members
are not allowed to be accessed directly by the object. Accessing a data member depends solely on the
access control of that data member.
This access control is given by Access modifiers in C++. There are three access modifiers:

i. Public
ii. private
iii. protected.

// C++ program to demonstrate


// accessing of data members

#include <bits/stdc++.h>
using namespace std;
class Geeks
{
// Access specifier
public:

// Data Members
string geekname;

// Member Functions()
void printname()
{
cout << "Geekname is: " << geekname;
}
};

int main() {

// Declare an object of class geeks


Geeks obj1;

// accessing data member


obj1.geekname = "Abhi";

// accessing member function


obj1.printname();
return 0;
}

Output:
Geekname is: Abhi
Member Functions in Classes

There are 2 ways to define a member function:

• Inside class definition

• Outside class definition

To define a member function outside the class definition we have to use the scope resolution :: operator
along with class name and function name.

// C++ program to demonstrate function


// declaration outside class

#include <bits/stdc++.h>
using namespace std;
class Geeks
{
public:
string geekname;
int id;

// printname is not defined inside class definition


void printname();

// printid is defined inside class definition


void printid()
{
cout << "Geek id is: " << id;
}
};

// Definition of printname using scope resolution operator ::


void Geeks::printname()
{
cout << "Geekname is: " << geekname;
}
int main() {

Geeks obj1;
obj1.geekname = "xyz";
obj1.id=15;

// call printname()
obj1.printname();
cout << endl;

// call printid()
obj1.printid();
return 0;
}

Output:
Geekname is: xyz
Geek id is: 15
Note that all the member functions defined inside the class definition are by default inline, but you can
also make any non-class function inline by using keyword inline with them. Inline functions are actual
functions, which are copied everywhere during compilation, like pre-processor macro, so the overhead
of function calling is reduced.

Note: Declaring a friend function is a way to give private access to a non-member function.

You might also like