Что нового

[Баг] ConsoleWrite Баг или так и должно быть ?

Сообщения
35
Репутация
-1
Сейчас обрисую ситуацию :smile: ( пол дня сидел выискивал косяк в коде )
в итоге поймал косяк не знаю даже что думать
Итак написал функцию возвращает при удаче одинаковый результат
1
Код:
_My_Func1 ($var)             
       ConsoleWrite( _My_Func1 ($var) )

2
Код:
$var = _My_Func1 ($var)
       ConsoleWrite($var)

3
Код:
ConsoleWrite($var)
и
Код:
ConsoleWrite( _My_Func1 ($var) )
возвращают одинаковые значения .
в функции есть такие стоки
Код:
FileMove ($var , $var)
ну в общем ясно переместить файл
ну так вот у меня файл 2 раза записывается вместо одного раза как должно быть ,
если сделать вот так
Код:
ConsoleWrite( _My_Func1 ($var) )
в остальных случаях 1 раз как положено что за фак :laugh:
какого хрена :mad: я пол дня выискивал у себя ошибку но никак не предполагал что запись в консоль может такое творить :shok:
P:S поясните плиз это правильная работа функции ? просто не как не предполагал что запись в консоль еще и работу функции может дублировать .

Используйте для AutoIt кода тег [autoit]

madmasles.
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8 107
Репутация
2 318
Gen345
При указаний функции в ConsoleWrite, она собственно и вызывается, чтобы вернуть значение в качестве параметра.
Нужно просто выводить значение, т.е подставлять переменную которой присвоено значение возвращаемое функцией.
 
АТ
G
Сообщения
35
Репутация
-1
CreatoR сказал(а):
Gen345
При указаний функции в ConsoleWrite, она собственно и вызывается, чтобы вернуть значение в качестве параметра.
Нужно просто выводить значение, т.е подставлять переменную которой присвоено значение возвращаемое функцией.
хорошо бы в справочке было бы описание что функция в ConsoleWrite не просто возвращает значение а вызывается , ну да ладно просто много времени из за фигни потерял . :smile:
 

firex

AutoIT Гуру
Сообщения
943
Репутация
203
Gen345 [url_ex=javascript:qq.OpenLink('http://autoit-script.ru/index.php?topic=19884.msg118393#msg118393')][?][/url_ex]
что функция в ConsoleWrite не просто возвращает значение а вызывается
А каким образом она вернет вам значение без выполнения?

Код:
ConsoleWrite( $var ) ;Выведет содержимое $var
ConsoleWrite( _Func() ) ;Выведет результат выполнения функции _Func()
ConsoleWrite( "_Func()" ) ;Выведет надпись "_Func()"
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8 107
Репутация
2 318
Gen345 [?]
хорошо бы в справочке было бы описание что функция в ConsoleWrite не просто возвращает значение а вызывается
Хорошо бы вам для начала поизучать поплотнее справочку, там указано как работают функции (и с ConsoleWrite это никак не связано).
 

Garrett

Модератор
Локальный модератор
Сообщения
3 999
Репутация
963
Gen345 [?]
хорошо бы в справочке было бы описание что функция в ConsoleWrite не просто возвращает значение а вызывается
Gen345 вы сами-то поняли, что написали :smile:
 
АТ
G
Сообщения
35
Репутация
-1
напали на нуба злыдни :rofl:
 
Верх