Информация об изменении, показанная в представлении переменных отладчика Xcode - PullRequest
0 голосов
/ 26 апреля 2018

Вместо того, чтобы видеть список адресов моих пользовательских объектов в представлении переменных отладчика Xcode, могу ли я сделать что-то, чтобы отобразить одно из их свойств, или вместо этого собственное описание класса?

enter image description here

В C # / Visual Studio это можно сделать путем переопределения ToString, поэтому я попытался переопределить Description, но это не сработало:

-(NSString *)description
{
    std::string fieldName = *(self->FieldName);
    return [NSString stringWithFormat:@"<FieldName: %@>",
        toNS(fieldName)];
}

1 Ответ

0 голосов
/ 26 апреля 2018

Не на 100% то же самое, но ваш класс должен соответствовать CustomDebugStringConvertible и предоставить debugDescription. Затем, когда вы видите ваши объекты в области отладки, щелкните правой кнопкой мыши один из них и нажмите «Распечатать описание». Или нажмите один из них и нажмите значок «Быстрый просмотр» под ним в области отладки. В консоли вы увидите следующую распечатку:

▿ my debugged object!
- title : "name1"

Вы также можете просмотреть свойства в области отладки, щелкнув треугольник раскрытия рядом с каждым объектом в списке.

Использование:

struct CustomObject: CustomDebugStringConvertible {
    var title: String

    var debugDescription: String {
        return "my debugged object!"
    }
}

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...