Вы все еще кипятите и сравниваете this с нулем?

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

© Habrahabr.ru