w3resource

C++ Dynamic Memory Allocation: Creating Objects with new Operator

C++ Dynamic Memory Allocation: Exercise-5 with Solution

Write a C++ program to dynamically create an object of a class using the new operator.

Sample Solution:

C Code:

#include <iostream>  // Including the Input/Output Stream Library

class MyClass {  // Declaration of a class named MyClass
public:
  void displayMessage() {  // Public member function within the class MyClass
    std::cout << "Dynamic object!" << std::endl;  // Outputting a message
  }
};

int main() {
  // Create a dynamic object of MyClass
  MyClass * dynamicObject = new MyClass;  // Dynamically allocating memory for an object of type MyClass

  // Call the member function of the dynamic object
  dynamicObject -> displayMessage();  // Accessing the member function of the dynamically created object using the pointer to the object

  // Deallocate the dynamic object
  delete dynamicObject;  // Deallocating the memory occupied by the dynamic object

  return 0;  // Returning 0 to indicate successful execution of the program
}

Sample Output:

Dynamic object!

Explanation:

In the above exercise,

  • At first we define a class called MyClass with a member function displayMessage() that simply outputs a message.
  • Inside the main() function, we use the new operator to dynamically create an object of MyClass and assign its address to a pointer called dynamicObject. This dynamically created object resides in the heap memory.
  • Then use the arrow operator (->) to call the displayMessage() member function of the dynamic object.
  • Finally, deallocate the dynamically created object using the delete operator to free the memory occupied by the object.

Flowchart:

Flowchart: Creating Objects with new Operator.

CPP Code Editor:

Contribute your code and comments through Disqus.

Previous C++ Exercise: Input character and string.
Next C++ Exercise: Creating an array of objects with new operator .

What is the difficulty level of this exercise?



Become a Patron!

Follow us on Facebook and Twitter for latest update.

It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.

https://www.w3resource.com/cpp-exercises/dynamic-memory-allocation/cpp-dynamic-memory-allocation-exercise-5.php