что такое AndAlso и OrElse
Участников: 4
Страница 1 из 1
что такое AndAlso и OrElse
наверное я очень туп, но прочитав в мануале, я так и не понял для чего они. при экспериментах, эти операторы возвращают всегда -1. я только понял, что там для какой-то коньюнкции.
electrik- Сообщения : 391
Дата регистрации : 2008-09-02
Возраст : 43
Откуда : галактика Млечный путь, система Солнечная, планета Земля, страна россия, город Санкт Петербург
Re: что такое AndAlso и OrElse
ваще судя по таблицам истинности AndAlso аналогичен And, а OrElse - Or, с единчтвенным оличием в том, что если можно понять результат с использованием тока первого операнда, то второй не учитывается, возможно с помощю этого достигается некий прирост производительности. А вообще, ты, как человек разбирающийся в Асме глянул бы код, да и нам бы мож рассказал что под ними скрывается
Re: что такое AndAlso и OrElse
Несдержался и сам посмотрел)) Однако получается одно и тоже, странно, и зачем тогда эти операторы нужны, если они обсалютно идентичны...
Re: что такое AndAlso и OrElse
Всё оказалось очень просто и крайне полезно.
Только с помощью andalso я решил свою проблемку.
А дело было так. Нужно было проверить два условия, причём именно в одном if ... then. Но, оператор and мне не подошел. Потому, что вторая проверка просто недопустима, если первое выражение равно 0.
Был у меня примерно такой код:
Когда строчка была, то всё было нормально.
Но когда строчки небыло, то вышибало с ошибкой.
И решил я попробовать andalso.
Вот мой эксперементик.
Когда стоит простой and, то функция вызываеться по любому.
А когда andalso, то функция вызываеться, только когда левый аперанд истинен.
Вот так вот.
Только с помощью andalso я решил свою проблемку.
А дело было так. Нужно было проверить два условия, причём именно в одном if ... then. Но, оператор and мне не подошел. Потому, что вторая проверка просто недопустима, если первое выражение равно 0.
Был у меня примерно такой код:
- Код:
if (ws > 0) and (*ws = "hello") then print "hello"
Когда строчка была, то всё было нормально.
Но когда строчки небыло, то вышибало с ошибкой.
И решил я попробовать andalso.
Вот мой эксперементик.
- Код:
function test() as integer
print "return 5"
function = 5
end function
dim as integer a = 0
if (a > 0) Andalso (test() = 5) then
print "true"
else
print "false"
end if
sleep
Когда стоит простой and, то функция вызываеться по любому.
А когда andalso, то функция вызываеться, только когда левый аперанд истинен.
Вот так вот.
Re: что такое AndAlso и OrElse
Экселлент - замечательно придумано. Теперь мне не нужно создавать вложенные в друг друга операторы )
Gena- Сообщения : 182
Дата регистрации : 2008-11-05
Возраст : 30
Откуда : Москва
Re: что такое AndAlso и OrElse
эрик, молодец! я даже на асме это смотрел, и не догнал, поэтому и заткнулся. просто там немного запутанный код, но теперь все ясно.
electrik- Сообщения : 391
Дата регистрации : 2008-09-02
Возраст : 43
Откуда : галактика Млечный путь, система Солнечная, планета Земля, страна россия, город Санкт Петербург
Страница 1 из 1
Права доступа к этому форуму:
Вы не можете отвечать на сообщения
|
|