Dyanmic Memory Allocation Example in C++


The program creates two dynamically allocated variables, pointInt and pointFloat, and assigns them a new integer and a new float, respectively. It then outputs the values of these variables and deletes them before exiting.

However, there is an issue with the way that delete is used. The correct way to delete multiple dynamically allocated objects is to call delete separately for each object, like this:

         delete pointInt;
         delete pointFloat;

Using a comma to separate multiple pointers is not correct, and could result in undefined behavior.

Source Code

#include<iostream>
using namespace std;
int main()
{
  int* pointInt;
  float* pointFloat;
  pointInt = new int;
  pointFloat = new float;
  *pointInt = 45;
  *pointFloat = 45.45f;
  cout<<*pointInt<<endl;
  cout<<*pointFloat<<endl;
  delete pointInt, pointFloat;
  return 0;
}
To download raw file Click Here

Output

45
45.45

Program List


Flow Control

IF Statement Examples


Switch Case


Goto Statement


Break and Continue


While Loop


Do While Loop


For Loop


Friend Function in C++


String Examples


Array Examples


Structure Examples


Structure & Pointer Examples


Structure & Functions Examples


Enumeration Examples


Template Examples


Functions


Inheritance Examples

Hierarchical Inheritance


Hybrid Inheritance


Multilevel Inheritance


Multiple Inheritance


Single Level Inheritance


Class and Objects

Constructor Example


Destructor Example


Operator Overloading Example


Operator and Function Example


List of Programs


Pointer Examples


Memory Management Examples


Pointers and Arrays


Virtual Function Examples