Вы все еще кипятите и сравниваете this с нулем?
Давным-давно в далекой-далекой галактике широко использовалась библиотека MFC, в которой у ряда классов были методы, сравнивающие this с нулем. Примерно так: class CWindow {
HWND handle;
HWND GetSafeHandle () const
{
return this == 0? 0: handle;
}
};
«Это же не имеет смысла» — возразит читатель. Еще как «имеет»: этот код «позволяет» вызывать метод GetSafeHandle () через нулевой указатель CWindow*. Такой прием время от времени используется в разных проектах. Рассмотрим, почему на самом деле это плохая идея.Читать дальше →
