Я только что был укушен раздражающей ошибкой которая была неясной поведением "отправить сообщение нильскому в порядке" в Objective-C.
Я видел Отправка сообщения в nil?, и консенсус, похоже, "то, как мы катимся" в Objective-C.
Теперь, может быть, у меня недостаточно опыта в Objective-C, но, похоже, было бы полезно поймать это, потому что я не могу придумать, почему это должно происходить в большинстве случаев. Тем не менее, это может быть просто кодовая идиома, к которой я еще не привык.
Иначе, чем проверка на нуль везде:
assert( object != nil );
[object message];
Есть ли способ сделать это время ловушкой для запуска и предупредить, когда object
равен нулю?