nullポインタを取得したときに、MessageBox
の代わりにヌルポイントを処理して終了する方が良い方法はありますか?私の先生は、exit()
を使うのは良い方法ではないと私に教えてくれました。ここに私のコードです:終了せずにヌルポインタを処理するには?
CCheckBoxUI *pCbSwitch = static_cast<CCheckBoxUI*> (pItem->FindSubControl(_T("switch")));
ASSERT(pCbSwitch && "Failed to find contronl");
if (pCbSwitch == nullptr)
{
MessageBox(NULL, _T("Failed to find contronl"), _T("tip"), 0);
exit(-1);
}
exitを呼び出さない場合は、終了しないでください。 –
あなたは既にアサートを持っています。なぜあなたは二重チェックですか? – molbdnilo
@molbdnilo私が知っているように、ASSERTはリリースで無効になるでしょう。したがって、このアサーションは無視されます。 – XHLin