Answer Posted / shyamal bose
Memory leaks happens for the memory allocated on Heap(ex A
*temp = new A()) . memory allocated by us on stack (int a)
is released automatically when the function returns or
module goes out of scope.
But memory allocated on heap will not be freed
automatically, we need to release it manually.
ex:
func()
{
A *a = new A(); //on heap
int b; // on stack
}
main()
{
func();
}
Now in above example when func is called memory for "a" is
created on HEAP by using NEW, but it is not freed by using
DELETE, hence is memory leak. On the other hand "b" is
created on STACK & freed automatically. so correct
implementation is:
func()
{
A *a = new A(); //on heap
int b; // on stack
delete a; //deleting memory on heap
}
main()
{
func();
}
Is This Answer Correct ? | 7 Yes | 0 No |
Post New Answer View All Answers
What is the use of oops?
What is polymorphism and its types?
What is oops?what is its use in software engineering?
What is polymorphism in oops?
class type to basic type conversion
What are the types of abstraction?
I have One image (means a group photo ) how to split the faces only from the image?............ please send the answer nagadurgaraju@gmail.com thanks in advace...
What is Difeerence between List obj=new ArrayList(); and ArrayList obj=new ArrayList()?
What is difference between data abstraction and encapsulation?
What is abstraction in oop with example?
officer say me - i am offered to a smoking , then what can you say
What are the 3 principles of oop?
What is encapsulation with example?
What does and I oop and sksksk mean?
what is difference between class template and template class?