--%>

New Operator and Delete Operator

New operator: It allows dynamic storage allocation. It throws an exception if memory allocation fails. The general format of new operator is return type, pointer to data type.

The C++ statement

Allocates memory to variable ptrvar dynamically of specified data type and specified size. The operator new allocates a specified amount of memory during run time and returns a pointer to that memory allocation. It compares the size of memory allocated by

Size of (data type) * integer type size;

Where data type can be a standard data type or a user defined data type, integer size can be an integer expression, which specifies the number of element in the array. The new operators returns the NULL, if memory allocation is unsuccessful

Example:   Int * a = new (100);

It creates a memory for an integer and initializes it with 100.

Delete operator: This is used to return the memory allocated by new operator back to the memory pull. Memory thus released will be reused for other part of programme. Although memory allocated by is returned automatically to the system. When the programme terminates it is safer to use this operator explicitly within the pointer. This is absolutely necessary in situations where local variable pointing to the memory get destroyed when the function terminates leaving memory inaccessible to the rest of the delete operator is-

Deal locates the memory allocates to ptrvar. By de allocating the memory, the pointer variable does not get deleted and the address value stored in it does not change. However this address become invalid, as the returned memory will be used up for storing entirely different data. 

   Related Questions in Programming Languages

  • Q : Define Class inheritance Class

    Class inheritance: Whenever a super class is expanded through a sub class, a class inheritance relationship exists among them. The sub class inherits the attributes and methods of its super class. Class inheritance in Java, is single

  • Q : What is Single inheritance Single

    Single inheritance: In Java, a class might not extend more than one class. It means that Java has a single inheritance model for the class inheritance.

  • Q : Application of S60 device The

    The application has been earlier tested along with an S60 2nd Edition device and this is Symbian Signed. So can I install similar application to another S60 device?

  • Q : Write a program that prints out 20

    Write a program that prints out 20 random cards form a standard deck of 52 cards. Make sure the program prints out different sets of cards from one run to the next.

  • Q : Define CORBA Define CORBA ? What does

    Define CORBA? What does it do?

  • Q : Define the term Address space Define

    Define the term Address space: The region of virtual memory in which a procedure is run.

  • Q : Software Quality Assurance and Software

    What real-life experience have you gained along with Software Quality Assurance as well as Software Quality Control?

  • Q : Describe Timers Timers: While time

    Timers: While time values usually cannot be reduced in the target system, their usage can be encapsulated as an abstraction which can be replaced easily (e.g., by a non-deterministic choice) during model checking.

  • Q : Define Property Specifications Property

    Property Specifications: Users can specify assertions using the assert(expr) statements. An assert statement is used to check if the property specified by the expression expr is valid within a state. If expr evaluates to 0, this implies that it is not

  • Q : When does a name clash take place in

    When does a name clash take place in programming?