What is the difference between creating an object,
using 'new' and using 'malloc'?
Answers were Sorted based on User's Feedback
Answer / btech
new operator returns a pointer of the correct type and
malloc() returns a void*
New calls the object’s constructor and malloc does not.
Any object created with new must be freed using delete and
where as malloc() and free() allocates and deallocates
memory
new operator can be overloaded by a class, where as
malloc() can't be overloaded.
| Is This Answer Correct ? | 9 Yes | 0 No |
Answer / sundaram
?new? is used for dynamic memory allocation in C++,
?malloc()? is used for dynamic memory allocation in C.
?new? allocates memory on heap.
?malloc()? allocates memory on heap.
?new? is operator,
?malloc()? is function
?new? returns memory pointer to the correct object on
SUCCESS,
?malloc? returns pointer to void void* on success
?new? throws exception called ?bad_alloc? on FAILURE,
?malloc? returns NULL on FAILURE
?new? is 2 step process
(i) First Allocates memory for a given object
(ii) Calls corresponding destructor if required
?malloc? is one step process ie it allocating only memory.
| Is This Answer Correct ? | 7 Yes | 2 No |
Answer / guna
malloc
1) can't initialize the memory
2)type casting is required
3)malloc is a function.
4)can't be overloaded.
new
1) memory can be initialized
2)no type casting for operator
3)new is an operator
4)can be overloaded.
| Is This Answer Correct ? | 0 Yes | 0 No |
When would you choose to return an error code rather than throw an exception?
Execute the qsort () in c/sort() in c++ library or your own custom sort which will sort any type of data on user defined criteria.
Is there a difference between class and struct?
What is data abstraction? How is it implemented in C++?
what is the difference between a pointer and a reference?
0 Answers Amazon, Blue Star, C DAC,
C++ supports multiple inheritance. What is the “diamond problem” that can occur with multiple inheritance? Give an example.
How will you print a list of all unique words from a string which may contain repeated words?
Write a program that can take input from 3 to 8 and calculate the average?
When must you use a constructor initializer list?
What are issues if we mix new and free in C++?
What are the different scope C++ provide ?
If class D is derived from a base class B