Почему Objective C использует ДА и НЕ вместо 1 и 0? [закрытый]

Проверки required_if и required_unless будут искать определенное условие для значения другого поля. Это не то, что вам нужно здесь.

Вы можете использовать required_with:

'day_desired' =>'nullable',
'hour_id' =>'required_with:day_desired|nullable|min:1'

Причина, по которой hour_id должно быть nullable, заключается в том, что вы не хотите, чтобы проверка min:1 выполнялась, когда day_desired и hour_id пусты. Тем не менее, правило required_with не будет выполнено, даже если поле обнуляемо, как указано в в этом посте на GitHub . Это поведение было добавлено в этом выпуске: https://github.com/laravel/framework/releases/tag/v5.4.16 .

24
задан Jon Seigel 18 May 2010 в 01:50
поделиться

7 ответов

typedef signed char        BOOL; 
// BOOL is explicitly signed so @encode(BOOL) == "c" rather than "C" 
// even if -funsigned-char is used.
#define OBJC_BOOL_DEFINED


#define YES             (BOOL)1
#define NO              (BOOL)0

(Для ссылки)

[button setAttr:YES];

Звучит более хорошим, по моему скромному мнению, затем...

[button setAttr:TRUE];
26
ответ дан 28 November 2019 в 22:07
поделиться

Создание его более читаемый является технической причиной.

53
ответ дан 28 November 2019 в 22:07
поделиться

C (на котором базируется Objective C) не имел булева типа до C99.

Objective C был создан в 80-х и определил свой собственный булев тип.

23
ответ дан 28 November 2019 в 22:07
поделиться

Поскольку программист имеет в виду да и не, не 1 и 0.

21
ответ дан 28 November 2019 в 22:07
поделиться

Та же причина большая часть использования языков true и false... Можно использовать 1 и 0, если Вам нравится, то же как какой-либо из тех других языков.

Действительно, если Вы думаете об этом, мы говорим о:

#define YES 1
#define NO  0

Просто более хорошо читать.

8
ответ дан 28 November 2019 в 22:07
поделиться

Это - просто синтаксис, нет никакой технической причины его. Они просто используют ДА/НЕТ для своего BOOL вместо истинного/ложного как C++, делает.

3
ответ дан 28 November 2019 в 22:07
поделиться

Это совпадает с истинный/ложный..

Не спрашивайте меня, почему они изобрели велосипед и изменили имена.

Мое персональное предположение, что разработчик языка думал, что будет здорово отличаться... (Да, я знаю, что получу downvotes от фанатов)..

-8
ответ дан 28 November 2019 в 22:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: