Что нового

Есть ли в возможность коде .au3 организовать ?( Условие, ЕслиИстина, ЕслиЛожь )

ildary

Новичок
Сообщения
49
Репутация
0
Уважаемые специалисты, посоветуйте пожалуйста следующее:

В некоторых языках есть очень удобчный оператор ?(,,), замещающий конструкцию
If Условие Then
ВыполнитьЕслиИстина
Else
ВыполнитьЕслиЛожь
EndIf

есть ли что-нибудь подобное в autoit?

искал на форуме, читал доки - не нашел. Можно конечно написать функцию с тремя Execute, но вдруг уже есть более простое решение?
 

Guezt

Продвинутый
Сообщения
335
Репутация
81
Нет такого оператора, данный вариант оптимальный.
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8 472
Репутация
2 401
Есть функция _Iif, это самое близкое к этому опреатору :smile:.
 

Belfigor

Модератор
Локальный модератор
Сообщения
3 591
Репутация
938
Код:
$var = Func()
If $var  = True Then
...
ElseIf $var = False Then
...
EndFunc
 
Автор
I

ildary

Новичок
Сообщения
49
Репутация
0
Спасибо за ответы, но хочется уточнить:


CreatoR сказал(а):
Есть функция _Iif, это самое близкое к этому опреатору :smile:.
это где такое? В хелпе не нашел, гугель молчит.

Belfigor сказал(а):
Код:
$var = Func()
If $var  = True Then
...
ElseIf $var = False Then
...
EndFunc
вот как раз хочется заменить такую пятиэтажную конструкцию одной строкой аля ?()
 

Belfigor

Модератор
Локальный модератор
Сообщения
3 591
Репутация
938
Одной строкой в автоите можно сделать только в две строки такую конструкцию и в ней в случае невыполнения первого условия неизбежно выполнится второе. Я ими пользуюсь когда мне нужно чтобы функция вернули либо True либо False.
 
Автор
I

ildary

Новичок
Сообщения
49
Репутация
0
можно привести маленький пример вот такого двустрочного?
 

Belfigor

Модератор
Локальный модератор
Сообщения
3 591
Репутация
938
Код:
Func Test($test)
    If $test > 0 And $test < 10 Then Return True
    Return False
EndFunc
 
Автор
I

ildary

Новичок
Сообщения
49
Репутация
0
CreatoR сказал(а):
ildary [?]
это где такое? В хелпе не нашел
Серъёзно?
Интересно как ты искал? :smile:
Теперь я понял, что плохо искал - сначала поиск в справке, потом в гугле. Теперь я буду внимательнее изучать библиотеки и вот так тупить больше не буду.

p.s. Большое спасибо за помощь!!!
 
Верх