• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

If - краткая проверка?

  • Автор темы rocsolanka
  • Дата начала
Статус
Закрыто для дальнейших ответов.
R

rocsolanka

Можно ли сделать так, чтобы при проверке
Dim dcCurrent As NotesDocumentCollection
If ((dcCurrent Is Nothing) Or (dcCurrent.Count=0) ) при выполнении 1-го условия второе вообще не проверялось? (Иначе, вылетает по ошибке, в случае, если dcCurrent Is Nothing)!!!
Во всех языках программировпания такое или есть или есть опция, которая включает "краткую" проверку. А в Lotus Script - неужели нет?????
 
D

Domino6

А оставь только одно что мешает или каскад ифа
 
R

rocsolanka

А оставь только одно что мешает или каскад ифа

Как что мешает? Мне, собственно нужно проверить, что dc.Count=0. Но если dc Is Nothing поучу ошибку.
Каскадом можно, конечно, но если выражение сложнее(например 3 таких блока, как в посте выше), то какскад получится слишком громоздким
 
D

Domino6

А вчем разница нет коллекциии или она пустая по сути это одно и тоже вот и оставь только один иф
 
N

nor

Попробуй, следующее, правда за результат я не ручаюсь:

If not dcCurrent Is Nothing then if dcCurrent.Count=0 then ....
 
D

Domino6

<!--QuoteBegin-nor+19:05:2006, 12:28 -->
<span class="vbquote">(nor @ 19:05:2006, 12:28 )</span><!--QuoteEBegin-->Попробуй, следующее, правда за результат я не ручаюсь:

If not dcCurrent Is Nothing then if dcCurrent.Count=0 then ....
[snapback]36193" rel="nofollow" target="_blank[/snapback]​
[/quote]
Ну так говорит что каскадный не подходит
 
30.05.2006
1 345
12
BIT
0
Можно ли сделать так, чтобы при проверке
Dim dcCurrent As NotesDocumentCollection
If ((dcCurrent Is Nothing) Or (dcCurrent.Count=0) ) при выполнении 1-го условия второе вообще не проверялось? (Иначе, вылетает по ошибке, в случае, если dcCurrent Is Nothing)!!!
Во всех языках программировпания такое или есть или есть опция, которая включает "краткую" проверку. А в Lotus Script - неужели нет?????
Таки - нет. И это поведение документировано. В других языках это вовсе не везде. Местами "краткая" проверка управляется опциями компилятора, местами "зашита в пузо" и создает жуткие проблемы для функций с побочным эффектом
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!