What is memory leak and memory corruption?
Answer / 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 |
advantage and disadvantage in c++>>oops and what are the questions ask for interview in c++>>oops. could you tell me or reply me
explain dynamic binding by drowing
Why multiple inheritance is not allowed?
What is the difference between pass by value,pass by pointer,pass by reference in the catch block in the exception handling in c++
Which method cannot be overridden?
Can we override main method?
why we call c++ is object oriented lanaguage
What polymorphism means?
Difference between over loading and over ridding?
12 Answers CTS, Patni, Softvision Solution,
What is the default size allocated for array in the statement if size not specified " int a[] "
write a progra in c++ using class & object to find out wheather a given no. is prim or not.
What is the use of unnamed namespaces in OOPS? The only advantage I know is that they dont need the scope resolution operator while accessing them. I want to know some other advantages of unnamed namespaces...