--%>

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 TCP endpoint TCP endpoint : It

    TCP endpoint: It is the combination of an IP address and Transmission Control Protocol (abbreviated as TCP) port number.

  • Q : Define Container Abstractions Container

    Container Abstractions: Abstractions for containers (such as lists, stacks, sets, or queues) may represent just the state of a container—e.g., full or empty—and abstract away from the actual container content. The list operations also need

  • Q : Limit the Scope of Data Declarations

    Limit the Scope of Data Declarations at the smallest possible level is consistent with the well known principle of data hiding. It stops one module from inadvertently referencing and modifying data values which are only meant to be used by another mod

  • Q : Describe tri-state devices Describe the

    Describe the tri-state devices and explain why they are necessary in a bus oriented system?

  • Q : Default function arguments C++ allows

    C++ allows us to call

  • Q : Define Comment Comment : It is a piece

    Comment: It is a piece of text proposed for the human reader of a program. The compilers disregard their contents.

  • Q : Define difference between write through

    Define the difference between write through and write back cache?

  • Q : What is Append mode Append mode : It is

    Append mode: It is a file writing mode, in which the existing contents of a file are maintained whenever the file is opened. Novel contents are appended to the existing.

  • Q : Explain Model-view pattern Model-view

    Model-view pattern: It is a pattern in which the representation of data (that is, the model) is kept separate from its visualization (that is, the view). These decoupling makes it simpler to change the underlying data representation, or give multiple

  • Q : What is BLAST in program model checking

    What is BLAST in program model checking: The abbreviation is Berkeley Lazy Abstraction Software Verification Tool (BLAST) is a software model checker for C programs. The main goal of BLAST (BLAST website) is to be able to check that software satisfies