пример использования утверждений во время отладки:
char* append(char* pStr, const char* pAddStr)
{
// Verify non-null pointers
assert(pStr != nullptr);
assert(pAddStr != nullptr);
// Code to append pAddStr to pStr...
}
Вызов функции append () с аргументом нулевого указателя в простой программе привел к следующему диагностическому сообщению на моей машине:
Assertion failed: pStr != nullptr, file c:\beginning visual c++ 2010\examples visual studio project files\tryassertion\tryassertion\tryassertion.cpp, line 10
Я хотел бы знать если утверждения необходимы. В чем смысл их использования, если я могу использовать выражения if-else для вывода собственных сообщений об ошибках?