new expression
The new
expression in C++ is used to dynamically allocate memory for objects at runtime. Here is an explanation of each step involved in using the new
expression:
Declare a pointer variable: Start by declaring a pointer variable that will hold the address of the dynamically allocated object. For example, you can declare a pointer of type
int
as follows:int *ptr;
.Allocate memory: Use the
new
expression followed by the object type to allocate memory for the object. For example, to dynamically allocate memory for anint
object, you can use the following syntax:ptr = new int;
.Check for allocation success: After using the
new
expression, it is a good practice to check if the memory allocation was successful. This can be done by checking if the pointer isnullptr
. If it is notnullptr
, it means the memory allocation was successful and the pointer now points to the dynamically allocated object.Use the dynamically allocated object: Once the memory is successfully allocated, you can use the dynamically allocated object just like any other object. For example, you can assign a value to the dynamically allocated
int
object using the pointer as follows:*ptr = 10;
.Deallocate memory: After using the dynamically allocated object, it is important to deallocate the memory to prevent memory leaks. This can be done using the
delete
operator followed by the pointer name. For example, to deallocate the memory allocated for theint
object, you can use the following syntax:delete ptr;
.
It is important to note that when using the new
expression, you are responsible for deallocating the memory using the delete
operator to avoid memory leaks. Additionally, if you are dynamically allocating an array of objects, you should use the new[]
expression to allocate memory and the delete[]
operator to deallocate memory.