What happens if an exception is throws from an, object's
constructor and object's destructor?
Answers were Sorted based on User's Feedback
Answer / dee
if the exception is thrown in constructor, its caught or
function terminate will eb called.
U cannot throw exception from destructor
| Is This Answer Correct ? | 6 Yes | 2 No |
Answer / som shekhar
When an exception is thrown from the object constructor,
then the destructor of the object wont be called. But to
undone all the things that happened in the c'tor before the
exception is thrown, you can make use of smart
pointer(either boost smart pointer or std auto pointer).
when an exception is thrown from the destructor the compiler
terminates the application.
So it is advisable not to throw an exception in the
destructor , better to do "something else".
| Is This Answer Correct ? | 2 Yes | 0 No |
Answer / akshay
constructor:
the destructors of all the member objects that were
correctly created are called, then code goes to the catch
statement if any
dtors:
legally allowed, however, it should be caught within the
function. if it is not caught, then it may lead to a call to
terminate() function. this call would happen in the case
when the destructor was itself called due to stack unwinding
happening because of another exception in probably some
other function.
| Is This Answer Correct ? | 2 Yes | 2 No |
Of the numbers 12 23 9 28 which would be at the top of a properly implemented maxheap a) 28 b) 9 c) Any of them could be
Is string an object in c++?
implement stack using stack.h headerfile functions
1 Answers Exilant, GMG, Subex, University,
We all know that a const variable needs to be initialized at the time of declaration. Then how come the program given below runs properly even when we have not initialized p?
Explain function overloading
Is c++ still in demand?
Define virtual constructor.
Is eclipse good for c++?
What is the array and initializing arrays in c++?
How do you clear a map in c++?
Explain selection sorting?
How do you invoke a base member function from a derived class in which you’ve overridden that function?