<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>Форум QUIK [тема: function]</title>
		<link>http://forum.quik.ru</link>
		<description>Новое в теме function форума  на сайте Форум QUIK [forum.quik.ru]</description>
		<language>ru</language>
		<docs>http://backend.userland.com/rss2</docs>
		<pubDate>Thu, 30 Apr 2026 03:32:43 +0300</pubDate>
		<item>
			<title>function</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message31938/topic3757/">function</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_W0SLwRVV" href="/user/11759/" bx-tooltip-user-id="11759">Archie_</a> написал:<br />функция достаточно большая и перечислять надо очень много проще функцию продублировать и знаки поменять<br />=============<br />Сделайте объект с разными функциями и общими данными. Параметры, если их много, будут общими, а функции с разными действиями разные, соответственно... Можно через замыкание, таким способом:
====code====
<pre>function new_f()
&nbsp;&nbsp;&nbsp;&nbsp;local a, b, c = 5, 10, 20
&nbsp;&nbsp;&nbsp;&nbsp;return {
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;f1 = function () print(a+b+c) end,
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;f2 = function () print(a-b-c) end,
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;f3 = function () print(a-b+c) end
&nbsp;&nbsp;&nbsp;&nbsp;}
end

local my_f = new_f()

my_f.f1()
my_f.f2()
my_f.f3()</pre>
=============
Вывод:
====code====
<pre>35
-25
15</pre>
============= <br />
			<i>22.06.2018 16:36:03, Suntor.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message31938/topic3757/</link>
			<guid>http://forum.quik.ru/messages/forum10/message31938/topic3757/</guid>
			<pubDate>Fri, 22 Jun 2018 16:36:03 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>function</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message31936/topic3757/">function</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_0IdD41v9" href="/user/901/" bx-tooltip-user-id="901">Suntor</a> написал:<br />Ну а в параметры вынести эти самые значения что мешает?<br />=============<br />функция достаточно большая и перечислять надо очень много проще функцию продублировать и знаки поменять<br /><br />короче понятно что так делать нельзя <br />
			<i>22.06.2018 16:06:21, Archie_.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message31936/topic3757/</link>
			<guid>http://forum.quik.ru/messages/forum10/message31936/topic3757/</guid>
			<pubDate>Fri, 22 Jun 2018 16:06:21 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>function</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message31934/topic3757/">function</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_fgNN33Zw" href="/user/17/" bx-tooltip-user-id="17">Sergey Gorokhov</a> написал:<br />Функция main должна быть только одна<br />=============<br /><br /> Функция main: Это я так, для примера написал <br /><br />Есть у меня Функция<br /> function bla()<br />она находит и перемещяет &nbsp;много предметов в перед ,то есть работает в плюс (функция достаточно большая)<br /> <br /> далее в скрипте происходит кое что еще<br /><br />И затем мне надо все переместить обратно,но не на тоже место , то есть эта же функция - только в минус <br />
			<i>22.06.2018 16:02:26, Archie_.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message31934/topic3757/</link>
			<guid>http://forum.quik.ru/messages/forum10/message31934/topic3757/</guid>
			<pubDate>Fri, 22 Jun 2018 16:02:26 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>function</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message31933/topic3757/">function</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_A8MFS92Z" href="/user/11759/" bx-tooltip-user-id="11759">Archie_</a> написал:<br />
====code====
<pre>&nbsp;&nbsp; function&nbsp;&nbsp; main (?)
&nbsp;&nbsp;&nbsp;&nbsp;print ( 5&nbsp;&nbsp;+&nbsp;&nbsp;10&nbsp;&nbsp;+&nbsp;&nbsp;20 )
 end 

 function&nbsp;&nbsp; main (?)
&nbsp;&nbsp;&nbsp;&nbsp;print ( 5&nbsp;&nbsp;-&nbsp;&nbsp;10&nbsp;&nbsp;-&nbsp;&nbsp;20 )
 end 

 function&nbsp;&nbsp; main (?)
&nbsp;&nbsp;&nbsp;&nbsp;print ( 5&nbsp;&nbsp;-&nbsp;&nbsp;10&nbsp;&nbsp;+&nbsp;&nbsp;20 )
 end 

main(?)
&nbsp;&nbsp;</pre>
=============
<br />=============<br />Ну а в параметры вынести эти самые значения что мешает?
====code====
<pre>function f(a, b, c)
&nbsp;&nbsp;&nbsp;&nbsp;print(a+b+c)
end

f(5, 10, 20)
f(5, -10, -20)
f(5, -10, 20)</pre>
============= <br />
			<i>22.06.2018 15:33:28, Suntor.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message31933/topic3757/</link>
			<guid>http://forum.quik.ru/messages/forum10/message31933/topic3757/</guid>
			<pubDate>Fri, 22 Jun 2018 15:33:28 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>function</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message31932/topic3757/">function</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			<br />====quote====<br /><a class="blog-p-user-name" id="bp_Wi2lgCfm" href="/user/11759/" bx-tooltip-user-id="11759">Archie_</a> написал:<br />main(5)<br />=============<br /><br />Это уже не правильно. Нельзя так делать. Функция main должна быть только одна. И ее НЕ надо вызывать где либо в коде. <br />
			<i>22.06.2018 15:19:10, Sergey Gorokhov.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message31932/topic3757/</link>
			<guid>http://forum.quik.ru/messages/forum10/message31932/topic3757/</guid>
			<pubDate>Fri, 22 Jun 2018 15:19:10 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
		<item>
			<title>function</title>
			<description><![CDATA[<b><a href="http://forum.quik.ru/messages/forum10/message31931/topic3757/">function</a></b> в форуме <a href="http://forum.quik.ru/forum10/">Программирование на языке Lua</a>. <br />
			Подскажите пожалуйста &nbsp;возможно ли в lua сделать так<br />Не знаю как правильно сформулировать вопрос :)<br />function main(и тут мы пишем что нам нужно)<br />С переменными и цифрами все понятно<br />
====code====
<pre>
function main(bla)
&nbsp;&nbsp; q = bla
&nbsp;&nbsp; b = 5
&nbsp;&nbsp; d = 10
&nbsp;&nbsp; print(q+b+d)
end
main(5)
--20
</pre>
=============
<br />А вот со знаками плюс,минус,умножить,разделить не понятно<br />Например у меня есть &nbsp;две абсолютно одинаковые функции ,только в одной должны стаять все плюсы,а в другой все минусы<br />возможно ли обойтись одной функцией,не дублируя вторую<br />
====code====
<pre>
function main(?)
&nbsp;&nbsp; print(5+10+20)
end

function main(?)
&nbsp;&nbsp; print(5-10-20)
end

function main(?)
&nbsp;&nbsp; print(5-10+20)
end

main(?)
</pre>
============= <br />
			<i>22.06.2018 15:16:22, Archie_.</i>]]></description>
			<link>http://forum.quik.ru/messages/forum10/message31931/topic3757/</link>
			<guid>http://forum.quik.ru/messages/forum10/message31931/topic3757/</guid>
			<pubDate>Fri, 22 Jun 2018 15:16:22 +0300</pubDate>
			<category>Программирование на языке Lua</category>
		</item>
	</channel>
</rss>
