C++ Tutorial Index

C++ Tutorial C++ History C++ Installation C++ First Program C++ cin and cout C++ Data type C++ Variable C++ operator C++ Keywords

C++ Control Statements

C++ If C++ Nested if C++ If-else C++ If-else-if C++ Switch C++ Break C++ Continue C++ Goto C++ For loop C++ While loop C++ Do while loop

C++ Functions

C++ Call by Value C++ Call by Reference C++ Recursion Function C++ Inline function C++ Friend function

C++ Arrays

Single dimension array Two dimension array

C++ Strings

C++ Strings

C++ Inheritance

C++ Inheritance Single level Inheritance Multilevel Inheritance Multiple Inheritance Hierarchical Inheritance Hybrid Inheritance

C++ Polymorphism

C++ Polymorphism C++ Overloading C++ Overriding C++ Virtual Function

C++ Pointers

C++ Pointers C++ this pointer

C++ Exception Handling

C++ Exception Handling

C++ Constructors

C++ Constructors Default Constructor Parameterize Constructor Copy constructor Constructor Overloading Destructor

C++ File Handling

C++ File Handling C++ Writing to file C++ Reading file C++ Close file

Miscellaneous

C Vs C++ C++ Comments C++ Data Abstraction C++ Identifier C++ Memory Management C++ Storage Classes C++ Void Pointer C++ Array To Function C++ Expressions C++ Features C++ Interfaces C++ Encapsulation std::min in C++ External merge sort in C++ Remove duplicates from sorted array in C++ Precision of floating point numbers Using these functions floor(), ceil(), trunc(), round() and setprecision() in C++ C++ References C++ Friend Functions C++ Mutable keyword Unary Operators in C++ Initialize Array of objects with parameterized constructors in C++ Differences between #define & const in C/C++ C++ Program to Implement Shell Sort C++ Program to Implement Merge Sort Storage Classes in C Vector resize() in C++ Passing by Reference Vs. Passing by the pointer in C++ Free vs delete() in C++ goto statement in C and C++ C++ program to read string using cin.getline() C++ String Concatenation Heap Sort in C++ Swap numbers in C++ Input Iterators in C++ Fibonacci Series in C++ C ++ Program: Alphabet Triangle and Number Triangle C++ Program: Matrix Multiplication C++ Program to Print Fibonacci Triangle Stack in C++ Maps in C++ Queue in C++ C++ Bitset C++ Algorithms Priority Queue in C++ C++ Multimap C++ Deque Function Pointer in C++ Sizeof() Operators in C++ C++ array of Pointers free() Vs delete in C Timsort Implementation Using C++ CPP Templates C++ Aggregation C++ Enumeration C++ Math Functions C++ Object Class C++ Queue Initialize Vector in C++ Vector in C++ C++ STL Components Function overloading in C++ C++ Maximum Index Problem C++ find missing in the second array C++ Program to find the product array puzzle C++ Program To Find Largest Subarray With 0 Sum C++ Program To Move All Zeros To The End Of The Array C++ Program to find the element that occurs once C++ Program to find the largest number formed from an array Constructor Vs Destructor C++ Namespaces C++ OOPs Concept C++ Static C++ Structs C++ Try-Catch C++ User Defined Exceptions C++ Virtual Destructor C++ vs C# Malloc() and new in C++ Palindrome Number Program in C++ Snake Code in C++ Splitting a string in C++ Structure Vs Class in C++ Virtual Function Vs Pure Virtual Function C++ Bidirectional Iterators C++ Forward Iterators C++ Iterators C++ Output Iterators C++ Range-based For Loop Converting string into integer in C++ LCM Program in C++ Type conversion in C++ Add two numbers using the function in C++ Advantage and disadvantage friend function C++ Armstrong Number Program in C++ ATM machine program in C++ using functions Binary to Decimal in C++ Bit Manipulation in C++ C++ Constructor C++ Dijkstra Algorithm Using the Priority Queue C++ int into String C++ Signal Handling Decimal to Binary in C++ Decimal to Hexadecimal in C++ Decimal to Octal in C++ Factorial Program in C++ Function in C++ Hexadecimal to Decimal in C++ Octal to Decimal in C++ Reverse a Number in C++ Structure Vs Class in C++ C++ Forward Iterators C++ Output Iterators C++ Prime number program Char Array to String in C++ Constructor Overloading in C++ Default arguments in C++ Different Ways to Compare Strings in C++ Dynamic Binding in C++ Program to convert infix to postfix expression in C++ SET Data Structure in C++ Upcasting and Downcasting in C++ Reverse an Array in C++ Fast Input and Output in C++ Delete Operator in C++ Copy elision in C++ C++ Date and Time C++ Bitwise XOR Operator Array of sets in C++ Binary Operator Overloading in C++ Binary Search in C++ Implementing the sets without C++ STL containers Scope Resolution Operator in C++ Smart pointers in C++ Types of polymorphism in C++ Exception Handling in C++ vs Java Const Keyword in C++ Type Casting in C++ Static keyword in C++ vs Java Inheritance in C++ vs Java How to concatenate two strings in C++ Programs to Print Pyramid Patterns in C++ swap() function in C++ Structure of C++ Program Stringstream in C++ and its applications rand() and srand() in C / C++ C++ Ternary Operator C++ Scope of Variables While Loop Examples in C++ Star pattern in C++ using For Loops For Loop Examples in C++ Do-While Loop Examples in C++ Top 5 IDEs for C++ That You Should Try Once Assertions in C/C++ C++ Convert Int to String Continue in C++ While loop Diamond Pattern in C++ using For Loop How to Reverse a String in C++ using Do-While Loop How to Reverse a String in C++ using For Loop How to Reverse a String in C++ using While Loop Infinite loop in C++ Loops in C++ Returning Multiple Values from a Function using Tuple and Pair in C++ wcscpy(), wcslen(), wcscmp() Functions in C++

C++ Object Class

C++ Object Class Overview: C++ is a high-level programming language and an object-oriented programming language. An object-oriented language always has some properties of classes and objects. In this article, we would be looking forward to discussing object classes. But before going any further, let us discover what classes and objects are.

C++ Class

In C++, a class is the basic building block that leads to object-oriented programming. Class is user-defined data that has its data members and member functions. These members can be easily accessed by creating an instance of that class. In popular terms, the class is a blueprint for an object. A typical class syntax looks like the following:

 class Animals   
 {   
      public: 
      int category;                   //field or data member    
      float population;         //field or data member 
      String name;                   //field or data member   
  }    

Note: Whenever a class is defined, no memory is allocated. But when the field or data members are initialized inside a class, memory is allocated.

C++ Object

In C++, an object is an entity of a class. It is also called an instance of the class. In simple words, an object is a real-world entity. The entities can be anything like cars, bars, mobiles, tablets, etc. An object always has a state and behavior. By state, we mean data, and by behavior, we mean functionality. An object in C++ typically looks like:

 Animal a1 ;
 // creating an object of class Animal 

Now that we have seen how class and objects look, let’s look at an example to understand how class and object work together.

Class and Object

 #include <bits/stdc++.h>
 using namespace std; 
 class Animals
 { 
    public: 
       int population;
       string name;
 }; 
 int main() { 
     Animals a1;   
     a1.population = 2000;   
     a1.name = "One-horned Rhino";  
     cout<<a1.population<<endl; 
     cout<<a1.name<<endl; 
     return 0; 
 }    

Output:

C++ Object Class

The above code is a classic example for implementing class and object in C++. We have defined a class Animals having data members population and name. We kept the data members public so that they are easily accessible. In the driver code, we have initialized these data members with some names and values and printed them on the console as output.

Class and Objects using Methods

 #include <bits/stdc++.h> 
 using namespace std; 
 class Animal { 
    public: 
        int population;   
        string name;    
        void push(int i, string n)   
         {   
             population = i;   
             name = n;   
         }   
        void show()   
   {  
             cout<<population<<"  "<<name<<endl;   
    }   
 }; 
 int main()
 { 
     Animal a1;
     Animal a2;
     a1.push(21, "Zebra");   
     a2.push(22, "Horse");   
     a1.show();   
     a2.show(); 
     return 0; 
 }  

Output:

C++ Object Class

The above code demonstrates the activity of class and object by using methods. Methods are nothing but functions that are defined inside the class Animal for some specific purpose. Here, we have defined two methods, namely, push and show. Push method inserts or assigns the values, and the show method is used to display the inserted values. To do this, we have made two objects, a1 and a2, to be associated with both methods. These objects access the values through methods and display them on the console.

Creating multiple Objects for same class

 #include<bits/stdc++.h>
 using namespace std;
 class SuperCar {
   public:
     string brand;  
     string model;
     int year;
 };
 int main() {
   SuperCar carObj1;    // creating object for car1
   carObj1.brand = "Lamborghini Aventador";
   carObj1.model = "Sunflex S2";
   carObj1.year = 2020;
   SuperCar carObj2;   // creating object for car2
   carObj2.brand = "Lycan HyperSport";
   carObj2.model = "Agira";
   carObj2.year = 1969;
   cout << carObj1.brand << " " << carObj1.model << " " << carObj1.year <<endl;
   cout << carObj2.brand << " " << carObj2.model << " " << carObj2.year <<endl;
   return 0;
 } 

Output:

C++ Object Class

In the above code, we have defined a class SuperCar with their data members brand, model, and a year respectively. We created two objects for the class SuperCar namely car Obj1 and car Obj2 which are then initialized by the values for the brand, model, and year.

The benefit of creating multiple objects is to make the class reusable. This enables the program to set or get multiple values using only a single class definition. Also, the properties of this class are reflected by creating multiple objects. In a similar sense, we created two objects in the program and then displayed the values associated with the object class.

Advantages

  1. The benefit of creating an object class is that the properties of one class can be accessible to its multiple objects.
  • The object class is that it increases code readability. The code is turned more easily to debug and implement.
  • Object class is an object-oriented methodology that follows strict rules which are needed while writing complex systems.
  • We can build programs from the standard working modules that communicate with one another, rather than having to start writing the code from scratch, which is a procedure-oriented approach. This leads to saving of development time and higher productivity.
  • By creating an object class, we can easily manage different types of software complexity.



ADVERTISEMENT
ADVERTISEMENT