What is the difference between the ASSERT and VERIFY macros?
Answers were Sorted based on User's Feedback
Answer / muthukumar. j
Both ASSERT and VERIFY macros behave in the same Manner in
debug Version.
But in Release version the Expression in the ASSERT is
ignored. And in Release version the Expression in the
VERIFY is evaluated. But not verified. Means the expression
is evaluated. And like dubug it is NOT stop the execution
if the expression evaluated to FALSE.
| Is This Answer Correct ? | 16 Yes | 0 No |
ASSERT:-
--------
This function is available only in the Debug version of MFC.
Ctharam* tharamage = new Ctharam(21); //Ctharam is derived from CObject.
ASSERT(tharamage != NULL);
ASSERT(tharamage ->IsKindOf(RUNTIME_CLASS(Ctharam)));
// Terminates program only if tharamage is NOT a Ctharam*.
VERIFY:-
-------
1)
In the Debug version of MFC, evaluates its argument.
ex:- VERIFY(booleanExpression )
2)
In the Release version of MFC, VERIFY evaluates the expression
Ex:-
// get the display device context
HDC hdc;
VERIFY((hdc = ::GetDC(hwnd)) != NULL);
// give the display context back
::ReleaseDC(hwnd, hdc);
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / satyabrata mishra
ASSERT() macro works in the Debug builds
VERIFY() macro works in Release builds.
| Is This Answer Correct ? | 2 Yes | 10 No |
How to handle dynamic menus in mfc? What happens when client calls cocreateinstance?
What is the difference between OnInitialUpdate and OnUpdate?
Explain in sort What is CTargetObject?
How to handle dynamic menus in MFC?
what is the use of CCmdTarget?
List out the parameters of WinMain Function.
What is the difference between workrer thread and UI thread
Tell me the different controls in MFC ?
How you find memory leaks?
Differ GetMessage, PostMessage & PeakMessage?
what message is sent to an application when the user presses the primary button?
How can update edit control data of an executing application from other application?