Click here to Skip to main content
15,904,348 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: Determining reason for SendMessageTimeout() failure Pin
MikeBz17-Mar-24 23:52
MikeBz17-Mar-24 23:52 
QuestionVS2022, I hate thee... not really but I do wish Microsoft would stop f'ing around with menus and process... - MDI app, ON_NOTIFY Pin
charlieg3-Mar-24 15:42
charlieg3-Mar-24 15:42 
QuestionRe: VS2022, I hate thee... not really but I do wish Microsoft would stop f'ing around with menus and process... - MDI app, ON_NOTIFY Pin
CPallini3-Mar-24 21:01
mveCPallini3-Mar-24 21:01 
AnswerRe: VS2022, I hate thee... not really but I do wish Microsoft would stop f'ing around with menus and process... - MDI app, ON_NOTIFY Pin
charlieg4-Mar-24 1:24
charlieg4-Mar-24 1:24 
QuestionC code "crashes"... Pin
Salvatore Terress3-Mar-24 7:08
Salvatore Terress3-Mar-24 7:08 
AnswerRe: C code "crashes"... Pin
Victor Nijegorodov3-Mar-24 8:05
Victor Nijegorodov3-Mar-24 8:05 
AnswerRe: C code "crashes"... Pin
k50543-Mar-24 10:35
mvek50543-Mar-24 10:35 
GeneralRe: C code "crashes"... Pin
Salvatore Terress3-Mar-24 14:13
Salvatore Terress3-Mar-24 14:13 
GeneralRe: C code "crashes"... Pin
k50544-Mar-24 0:51
mvek50544-Mar-24 0:51 
GeneralRe: C code "crashes"... Pin
Salvatore Terress4-Mar-24 2:12
Salvatore Terress4-Mar-24 2:12 
Questionme vs. VS2022.. detecting NULL pointers Pin
charlieg29-Feb-24 11:38
charlieg29-Feb-24 11:38 
AnswerRe: me vs. VS2022.. detecting NULL pointers Pin
charlieg29-Feb-24 12:11
charlieg29-Feb-24 12:11 
GeneralRe: me vs. VS2022.. detecting NULL pointers Pin
Richard Andrew x6429-Feb-24 12:53
professionalRichard Andrew x6429-Feb-24 12:53 
GeneralRe: me vs. VS2022.. detecting NULL pointers Pin
trønderen1-Mar-24 7:14
trønderen1-Mar-24 7:14 
GeneralRe: me vs. VS2022.. detecting NULL pointers Pin
Richard Andrew x641-Mar-24 7:39
professionalRichard Andrew x641-Mar-24 7:39 
GeneralRe: me vs. VS2022.. detecting NULL pointers Pin
trønderen1-Mar-24 13:37
trønderen1-Mar-24 13:37 
GeneralRe: me vs. VS2022.. detecting NULL pointers Pin
jschell1-Mar-24 12:05
jschell1-Mar-24 12:05 
GeneralRe: me vs. VS2022.. detecting NULL pointers Pin
Mircea Neacsu1-Mar-24 15:49
Mircea Neacsu1-Mar-24 15:49 
GeneralRe: me vs. VS2022.. detecting NULL pointers Pin
CPallini1-Mar-24 23:21
mveCPallini1-Mar-24 23:21 
AnswerRe: me vs. VS2022.. detecting NULL pointers Pin
Mircea Neacsu29-Feb-24 12:24
Mircea Neacsu29-Feb-24 12:24 
GeneralRe: me vs. VS2022.. detecting NULL pointers Pin
charlieg29-Feb-24 15:41
charlieg29-Feb-24 15:41 
GeneralRe: me vs. VS2022.. detecting NULL pointers Pin
Mircea Neacsu29-Feb-24 16:39
Mircea Neacsu29-Feb-24 16:39 
charlieg wrote:
I take the phrase "Here be dragons..." seriously.
And so you should. Seems the author of the code in question also took it seriously:
C++
void CInfoBar::SetText(LPCTSTR lpszNew)
{
    ASSERT(lpszNew && AfxIsValidString(lpszNew));
In this case assert seems the proper way to handle a failing precondition: the function cannot work with a NULL pointer. Fullstop!

In the new variant something has changed:
C++
if (NULL != lpszNew)
{
    ASSERT(lpszNew && AfxIsValidString(lpszNew));
The ASSERT after the if is clearly not needed (or it could be simplified to keep just the second condition). Also, more importantly the contract conditions of the function have changed: previously the function said "I cannot deal with NULL values for lpszNew". Now it says "if you pass me a NULL value I'm going to do something about it (possibly an else clause for the if statement or something)".

I'm not saying this is wrong but is something to consider carefully.

PS:
charlieg wrote:
Still I'm amazed that the MS compiler would distinguish between either version of the source.
It's the artificial intelligence Laugh | :laugh:
Mircea

QuestionDATASET Pin
Aryan Gupta 202429-Feb-24 6:51
Aryan Gupta 202429-Feb-24 6:51 
AnswerRe: DATASET Pin
Dave Kreskowiak29-Feb-24 9:34
mveDave Kreskowiak29-Feb-24 9:34 
AnswerRe: DATASET Pin
Richard Deeming29-Feb-24 21:34
mveRichard Deeming29-Feb-24 21:34 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.