Как напечатать что-нибудь, чтобы, если это ноль, это напечатало ноль - iOS - PullRequest
0 голосов
/ 14 июня 2011

Я всегда использую NSLog для распечатки содержимого объектов при отладке приложений iOS.Но каждый раз, когда я сталкиваюсь с «нулевым» объектом, программа вылетает.В Java, если объект имеет значение null, он выведет «null».Есть ли способ сделать это в Objective-C?

Ответы [ 2 ]

1 голос
/ 14 июня 2011

Что вы подразумеваете под «распечатывать содержимое объектов»?Если вы разыменовываете нулевой указатель, это вызовет проблему.Если вы просто печатаете указатель, все должно быть в порядке.Вы также можете отправлять сообщения на ноль без проблем, так что вы можете сделать это:

NSLog(@"theObject is: %@", [theObject description]);
1 голос
/ 14 июня 2011

Что-то вроде:

if (questionableObject == nil)  {
   NSLog(@"questionableObject is nil.");
} else {
   NSLog(@"questionableObject is: %@", questionableObject);
}

Я действительно столкнулся с этой проблемой, только когда отправляю сообщение объекту в списке параметров NSLog, в котором в качестве параметра используется объект nil.Как то так:

if (questionableObject == nil)  {
   NSLog(@"questionableObject is nil.");
} else {
   NSLog(@"result is: %@", [something someMessage:questionableObject]);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...