/ / как TRUEPREDICATE се различават от [NSPredicate predicateWithValue: YES]? - основни данни

как TRUEPREDICATE се различават от [NSPredicate predicateWithValue: YES]? - основни данни

Използвам [fetchRequest setPredicate:[NSPredicate predicateWithValue: YES]]; да отстранявам грешките на моя код, за да премине универсален истински предикат. Когато exicuting lldb команда PO [NSPredicate predicateWithValue: YES], тя печат TRUEPREDICATE.

Типът връщане за predicateWithValue: е NSPredicate.

Когато го промених на [fetchRequest setPredicate: TRUEPREDICATE]; Xcode се оплаква от синтактична грешка „използване на недеклариран идентификатор“

Въпросът ми е дали трябва да импортирам някакъв заглавен файл за премахване на грешка? Ако не, тогава как TRUEPREDICATE се различават от [NSPredicate predicateWithValue: YES].

Отговори:

6 за отговор № 1

С универсален истински предикат може да се създаде

[NSPredicate predicateWithValue:YES];

или

[NSPredicate predicateWithFormat:@"TRUEPREDICATE"];

И двете декларации връщат един и същ предикат.

po отпечатва описанието на обект. Описанието на NSPredicate е подобен на формата.


2 за отговор № 2

в Swift 3 бихте направили както по-долу

NSPredicate(value: true)

или

NSPredicate(format: "TRUEPREDICATE")