Visual C++. Описание стандартных классов - AssertValid

ОГЛАВЛЕНИЕ

AssertValid

virtual void AssertValid() const;

Описание

Функция CObject::AssertValid служит для целей отладки и производит проверку данного объекта на допустимость значений хранимых в нем величин. В отладочной версии библиотеки данная функция может посредством вызова исключения прервать выполнение программы и вывести сообщение, в котором будет указано имя файла программы и номер строки, из которой было вызвано исключение. При написании пользовательского класса необходимо перегрузить функцию AssertValid и поместить в ней необходимые проверки на допустимость значений хранящихся в объекте величин. Обычно, первым оператором перегруженной функции AssertValid является вызов соответствующей функции базового класса. Поскольку функция AssertValid является функцией-константой, пользователь не может изменять значения величин в проверяемом объекте. Перегруженная версия данной функции не должна сама вызывать исключения, а должна только сообщать, допустима ли данная комбинация параметров в объекте класса или нет. Понятие допустимости зависит от самого класса. Как правило, осуществляется только "поверхностная проверка". Так, например, если класс содержит указатели на другие объекты, то проверяется только тот факт, что эти указатели не нулевые, но не проверяется допустимость объектов, на которые они указывают.