<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://sfsys.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0</id>
	<title>Общее описание языка - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://sfsys.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0"/>
	<link rel="alternate" type="text/html" href="http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;action=history"/>
	<updated>2026-04-04T10:03:49Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.1</generator>
	<entry>
		<id>http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=5234&amp;oldid=prev</id>
		<title>Admin: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=5234&amp;oldid=prev"/>
		<updated>2026-04-01T10:01:23Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 10:01, 1 April 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
		
	</entry>
	<entry>
		<id>http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=5233&amp;oldid=prev</id>
		<title>1&gt;Admin: /* Аргументы функции */</title>
		<link rel="alternate" type="text/html" href="http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=5233&amp;oldid=prev"/>
		<updated>2026-01-08T12:53:12Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Аргументы функции&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 12:53, 8 January 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l326&quot; &gt;Line 326:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 326:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* не должно содержать нелитерных и нецифровых знаков. Знаки, которые могут быть использованы в имени функций: &amp;quot;0&amp;quot;..&amp;quot;9&amp;quot;, &amp;quot;?&amp;quot;, &amp;quot;A&amp;quot;..&amp;quot;Z&amp;quot;, &amp;quot;_&amp;quot;, &amp;quot;a&amp;quot;..&amp;quot;z&amp;quot;, все символы с кодами &amp;gt;=128.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* не должно содержать нелитерных и нецифровых знаков. Знаки, которые могут быть использованы в имени функций: &amp;quot;0&amp;quot;..&amp;quot;9&amp;quot;, &amp;quot;?&amp;quot;, &amp;quot;A&amp;quot;..&amp;quot;Z&amp;quot;, &amp;quot;_&amp;quot;, &amp;quot;a&amp;quot;..&amp;quot;z&amp;quot;, все символы с кодами &amp;gt;=128.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== Аргументы функции =====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== Аргументы функции =====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;Функция может иметь неограниченное количество аргументов. Свойствами каждого из аргументов являются его имя, способ его адресации и наличие выражения по умолчанию. Имена аргументов подчиняются таким же правилам, как и имена функций. В момент исполнения блока инструкций функции каждый из аргументов может быть адресован по имени, как обычная переменная. Имена аргументов попадают в стек имен последними, при исполнении функции, поэтому, если какое-то имя совпадает с именем переменной с префиксом '''Export''', более высокого уровня вложенности, при обращение к имени будет использован аргумент, а не указанная переменная. Во время вызова функции, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;аргументы автоматически получают префикс '''Export''', поэтому &lt;/del&gt;к &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;ним &lt;/del&gt;можно обращаться в функциях более низкого уровня вложенности. &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;При этом&lt;/del&gt;, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;нужно учитывать&lt;/del&gt;, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;что &lt;/del&gt;аргументы функции более высокого уровня вложенности будут доступны только в функциях, вложенных в нее. &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;К примеру, функция, вызванная &lt;/del&gt;из &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;глобального &lt;/del&gt;модуля &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;системы&lt;/del&gt;, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;не сможет получить доступ к аргументам&lt;/del&gt;, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;вызывающей функции, находящейся в другом модуле&lt;/del&gt;.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;Функция может иметь неограниченное количество аргументов. Свойствами каждого из аргументов являются его имя, способ его адресации и наличие выражения по умолчанию. Имена аргументов подчиняются таким же правилам, как и имена функций. В момент исполнения блока инструкций функции каждый из аргументов может быть адресован по имени, как обычная переменная. Имена аргументов попадают в стек имен последними, при исполнении функции, поэтому, если какое-то имя совпадает с именем переменной с префиксом '''Export''', более высокого уровня вложенности, при обращение к имени будет использован аргумент, а не указанная переменная. Во время вызова функции, к &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;аргументам &lt;/ins&gt;можно обращаться в функциях более низкого уровня вложенности &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;того же самого модуля (т.е&lt;/ins&gt;. &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;функция, вызываемая, к примеру, из глобального модуля, не будет видеть аргумент вызывающей функции&lt;/ins&gt;, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;находящейся в другом модуле). Иными словами&lt;/ins&gt;, аргументы функции более высокого уровня вложенности будут доступны только в функциях, вложенных в нее. &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Агрументы функций можно сделать видимыми &lt;/ins&gt;из &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;вызываемых функций любого уровня вложенности и любого &lt;/ins&gt;модуля, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;если использовать префикс '''Export'''. В этом отношении&lt;/ins&gt;, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;они будут подобны переменным с таким префиксом&lt;/ins&gt;.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;Способ адресации аргумента определяет возможность изменения внешней переменной или метода объекта из тела самой функции. Существует два &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;способа &lt;/del&gt;адресации аргументов: &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;Способ адресации аргумента определяет возможность изменения внешней переменной или метода объекта из тела самой функции&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;, а также видимость этого аргумента в вызываемых функциях&lt;/ins&gt;. Существует два &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;вида &lt;/ins&gt;адресации аргументов&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;. Оба можно использовать при задании аргументов одновременно (т.е. разрешены комбинации &amp;lt;code&amp;gt;ByRef Export&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;Export ByVal&amp;lt;/code&amp;gt; и т.п.): &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* '''ByVal''', используемый по умолчанию, когда при изменении аргументов внутри функции, внешние переменные не будут изменены (однако, нужно учесть, что, если переменная содержит объект, то аргумент будет содержать тот же самый объект и изменения, производимые в объекте при его адресации с помощью аргумента, будут также видны при его адресации с помощью внешней переменной, пример см. ниже).&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;* Правила изменения аргумента-переменной. Можно использовать один из указанных префиксов&lt;/ins&gt;:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* '''ByRef''', при задании адресации таким способом, после окончания выполнения функции, переменная, использовавшаяся при вызове функции, будет обновлена значением аргумента. Важно понимать, что обновление значения переменных не происходит при каждом изменении аргумента, а только один раз после окончания выполнения функции (пример см. ниже)&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;*&lt;/ins&gt;* '''ByVal''', используемый по умолчанию, когда при изменении аргументов внутри функции, внешние переменные не будут изменены (однако, нужно учесть, что, если переменная содержит объект, то аргумент будет содержать тот же самый объект и изменения, производимые в объекте при его адресации с помощью аргумента, будут также видны при его адресации с помощью внешней переменной, пример см. ниже).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;*&lt;/ins&gt;* '''ByRef''', при задании адресации таким способом, после окончания выполнения функции, переменная, использовавшаяся при вызове функции, будет обновлена значением аргумента. Важно понимать, что обновление значения переменных не происходит при каждом изменении аргумента, а только один раз после окончания выполнения функции (пример см. ниже)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;* Видимость аргумента. По умолчанию аргумент будет обычным, если не задан префикс ''Export'':&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;** '''Export''' -- при поиске, к этому аргументу будут применяться такие же правила, как и к переменным с префиксом ''Export''.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;При определении аргумента можно также использовать дополнительное выражение, называемое выражением по умолчанию. Если выражение по умолчанию определено, аргумент считается необязательным, его указание при вызове функции не требуется, к примеру для функции &amp;lt;code&amp;gt;Func&amp;lt;/code&amp;gt; с аргументами &amp;lt;code&amp;gt;Func(a,b=1,c=2)&amp;lt;/code&amp;gt; аргументы b и с можно опустить, при пропуске только переменной ''b'', можно осуществить вызов функции в виде, к примеру, &amp;lt;code&amp;gt;Func(1,,3)&amp;lt;/code&amp;gt;, при пропуске только переменной ''c'', функцию можно вызвать, к примеру, &amp;lt;code&amp;gt;Func(1,2)&amp;lt;/code&amp;gt;, при пропуске же обоих аргументов функцию можно вызвать просто как &amp;lt;code&amp;gt;Func(2)&amp;lt;/code&amp;gt;. Выражение, указываемое при определении аргумента, будет использоваться для его инициализации при вызове функции без указания аргумента. Выражения могут быть как простыми константами, так как сложными выражениями с использованием математических, логических функций и даже вызовов других функций объявленных в тексте программы. В случаях сложных выражений их вычисление происходит в момент вызова функции при помещении аргументов в стек переменных до исполнения блока инструкций самой функции.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;При определении аргумента можно также использовать дополнительное выражение, называемое выражением по умолчанию. Если выражение по умолчанию определено, аргумент считается необязательным, его указание при вызове функции не требуется, к примеру для функции &amp;lt;code&amp;gt;Func&amp;lt;/code&amp;gt; с аргументами &amp;lt;code&amp;gt;Func(a,b=1,c=2)&amp;lt;/code&amp;gt; аргументы b и с можно опустить, при пропуске только переменной ''b'', можно осуществить вызов функции в виде, к примеру, &amp;lt;code&amp;gt;Func(1,,3)&amp;lt;/code&amp;gt;, при пропуске только переменной ''c'', функцию можно вызвать, к примеру, &amp;lt;code&amp;gt;Func(1,2)&amp;lt;/code&amp;gt;, при пропуске же обоих аргументов функцию можно вызвать просто как &amp;lt;code&amp;gt;Func(2)&amp;lt;/code&amp;gt;. Выражение, указываемое при определении аргумента, будет использоваться для его инициализации при вызове функции без указания аргумента. Выражения могут быть как простыми константами, так как сложными выражениями с использованием математических, логических функций и даже вызовов других функций объявленных в тексте программы. В случаях сложных выражений их вычисление происходит в момент вызова функции при помещении аргументов в стек переменных до исполнения блока инструкций самой функции.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Синтетический пример, показывающий инициализацию и работу с функциями, содержащими разные типы аргументов:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Синтетический пример, показывающий инициализацию и работу с функциями, содержащими разные типы аргументов:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l521&quot; &gt;Line 521:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 525:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== Магические функции ====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== Магические функции ====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Магическими называются функции, нестандартная работа с аргументами которых, не позволяет создать их обычными средствами языка. Для обычных функций каждый из аргументов вычисляется до того, как будет произведено обращение к функции, тогда как магические функции работают как конструкции языка с блоками инструкций, и вычисления аргументов производятся только когда это необходимо. В отличие от конструкций языка, однако, магические функции не могут представлять самостоятельные инструкции или содержать блоки инструкций, а используются только в выражениях и могут содержать только выражения в своих аргументах. Кроме описанных здесь магических функций, существуют и другие (к примеру, [[Coalesce]], [[InSet]], [[InRange]], [[If2|??]] и т.д.), они помечены как магические в описании и в списке функций.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Магическими называются функции, нестандартная работа с аргументами которых, не позволяет создать их обычными средствами языка. Для обычных функций каждый из аргументов вычисляется до того, как будет произведено обращение к функции, тогда как магические функции работают как конструкции языка с блоками инструкций, и вычисления аргументов производятся только когда это необходимо. В отличие от конструкций языка, однако, магические функции не могут представлять самостоятельные инструкции или содержать блоки инструкций, а используются только в выражениях и могут содержать только выражения в своих аргументах. Кроме описанных здесь магических функций, существуют и другие (к примеру, [[Coalesce]], [[InSet]], [[InRange]], [[If2|??]] и т.д.), они помечены как магические в описании и в списке функций&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;. Эти функции, в отличие от описанных здесь, могут использоваться не только в выражениях, но и как самостоятельные инструкции (к примеру, &amp;lt;code&amp;gt;?(pos(&amp;quot;code&amp;quot;,Стр)&amp;gt;0,TearStr(Стр,&amp;quot;code&amp;quot;),TearStr(Стр,&amp;quot;,&amp;quot;));&amp;lt;/code&amp;gt; вызовет ошибку без оператора присваивания, однако использование &amp;lt;code&amp;gt;??(pos(&amp;quot;code&amp;quot;,Стр)&amp;gt;0,TearStr(Стр,&amp;quot;code&amp;quot;),TearStr(Стр,&amp;quot;,&amp;quot;));&amp;lt;/code&amp;gt; допустимо). {{Planned}} Все функции, описанные здесь, в будущем можно будет использовать, как самостоятельные инструкции&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== Магическая функция логическое &amp;quot;и&amp;quot; =====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== Магическая функция логическое &amp;quot;и&amp;quot; =====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>1&gt;Admin</name></author>
		
	</entry>
	<entry>
		<id>http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=5156&amp;oldid=prev</id>
		<title>Admin: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=5156&amp;oldid=prev"/>
		<updated>2025-12-27T17:08:49Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 17:08, 27 December 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
		
	</entry>
	<entry>
		<id>http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=5155&amp;oldid=prev</id>
		<title>1&gt;Admin: /* Магические функции */</title>
		<link rel="alternate" type="text/html" href="http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=5155&amp;oldid=prev"/>
		<updated>2025-12-27T11:05:54Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Магические функции&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 11:05, 27 December 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l521&quot; &gt;Line 521:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 521:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== Магические функции ====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== Магические функции ====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Магическими называются функции, нестандартная работа с аргументами которых, не позволяет создать их обычными средствами языка. Для обычных функций каждый из аргументов вычисляется до того, как будет произведено обращение к функции, тогда как магические функции работают как конструкции языка с блоками инструкций, и вычисления аргументов производятся только когда это необходимо. В отличие от конструкций языка, однако, магические функции не могут представлять самостоятельные инструкции или содержать блоки инструкций, а используются только в выражениях и могут содержать только выражения в своих аргументах.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Магическими называются функции, нестандартная работа с аргументами которых, не позволяет создать их обычными средствами языка. Для обычных функций каждый из аргументов вычисляется до того, как будет произведено обращение к функции, тогда как магические функции работают как конструкции языка с блоками инструкций, и вычисления аргументов производятся только когда это необходимо. В отличие от конструкций языка, однако, магические функции не могут представлять самостоятельные инструкции или содержать блоки инструкций, а используются только в выражениях и могут содержать только выражения в своих аргументах&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;. Кроме описанных здесь магических функций, существуют и другие (к примеру, [[Coalesce]], [[InSet]], [[InRange]], [[If2|??]] и т.д.), они помечены как магические в описании и в списке функций&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== Магическая функция логическое &amp;quot;и&amp;quot; =====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===== Магическая функция логическое &amp;quot;и&amp;quot; =====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>1&gt;Admin</name></author>
		
	</entry>
	<entry>
		<id>http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=4412&amp;oldid=prev</id>
		<title>Admin: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=4412&amp;oldid=prev"/>
		<updated>2022-08-09T09:51:08Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 09:51, 9 August 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
		
	</entry>
	<entry>
		<id>http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=4411&amp;oldid=prev</id>
		<title>1&gt;Admin at 08:38, 8 August 2022</title>
		<link rel="alternate" type="text/html" href="http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=4411&amp;oldid=prev"/>
		<updated>2022-08-08T08:38:15Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;amp;diff=4411&amp;amp;oldid=4384&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>1&gt;Admin</name></author>
		
	</entry>
	<entry>
		<id>http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=4384&amp;oldid=prev</id>
		<title>Admin: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=4384&amp;oldid=prev"/>
		<updated>2022-07-17T11:23:46Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 11:23, 17 July 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
		
	</entry>
	<entry>
		<id>http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=4383&amp;oldid=prev</id>
		<title>1&gt;Admin at 20:22, 6 July 2022</title>
		<link rel="alternate" type="text/html" href="http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=4383&amp;oldid=prev"/>
		<updated>2022-07-06T20:22:55Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 20:22, 6 July 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l329&quot; &gt;Line 329:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 329:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;Способ адресации аргумента определяет возможность изменения внешней переменной или метода объекта из тела самой функции. Существует два способа адресации аргументов: &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;Способ адресации аргумента определяет возможность изменения внешней переменной или метода объекта из тела самой функции. Существует два способа адресации аргументов: &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* '''ByVal''', используемый по умолчанию, когда при изменении аргументов внутри функции, внешние переменные не будут изменены (однако, нужно учесть, что, если переменная содержит объект, то аргумент будет содержать тот же самый объект и изменения, производимые в объекте при его адресации с помощью аргумента, будут также видны при его адресации с помощью внешней переменной, пример см. ниже).&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* '''ByVal''', используемый по умолчанию, когда при изменении аргументов внутри функции, внешние переменные не будут изменены (однако, нужно учесть, что, если переменная содержит объект, то аргумент будет содержать тот же самый объект и изменения, производимые в объекте при его адресации с помощью аргумента, будут также видны при его адресации с помощью внешней переменной, пример см. ниже).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* '''ByRef''', при задании адресации таким способом, после окончании выполнения функции, переменная, использовавшаяся при вызове функции, будет обновлена значением аргумента&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;. Кроме переменных, возможно также обновление свойств объектов&lt;/del&gt;. Важно понимать, что обновление значения переменных &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;или свойств объектов &lt;/del&gt;не происходит при каждом изменении аргумента, а только один раз после окончания выполнения функции (пример см. ниже)&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* '''ByRef''', при задании адресации таким способом, после окончании выполнения функции, переменная, использовавшаяся при вызове функции, будет обновлена значением аргумента. Важно понимать, что обновление значения переменных не происходит при каждом изменении аргумента, а только один раз после окончания выполнения функции (пример см. ниже)&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;При определении аргумента можно также использовать дополнительное выражение, называемое выражением по умолчанию. Если выражение по умолчанию определено, аргумент считается необязательным, его указание при вызове функции не требуется, к примеру для функции &amp;lt;code&amp;gt;Func&amp;lt;/code&amp;gt; с аргументами &amp;lt;code&amp;gt;Func(a,b=1,c=2)&amp;lt;/code&amp;gt; аргументы b и с можно опустить, при пропуске только переменной ''b'', можно осуществить вызов функции в виде, к примеру, &amp;lt;code&amp;gt;Func(1,,3)&amp;lt;/code&amp;gt;, при пропуске только переменной ''c'', функцию можно вызвать, к примеру, &amp;lt;code&amp;gt;Func(1,2)&amp;lt;/code&amp;gt;, при пропуске же обоих аргументов функцию можно вызвать просто как &amp;lt;code&amp;gt;Func(2)&amp;lt;/code&amp;gt;. Выражение, указываемое при определении аргумента, будет использоваться для его инициализации при вызове функции без указания аргумента. Выражения могут быть как простыми константами, так как сложными выражениями с использованием математических, логических функций и даже вызовов других функций объявленных в тексте программы. В случаях сложных выражений их вычисление происходит в момент вызова функции при помещении аргументов в стек переменных до исполнения блока инструкций самой функции.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;При определении аргумента можно также использовать дополнительное выражение, называемое выражением по умолчанию. Если выражение по умолчанию определено, аргумент считается необязательным, его указание при вызове функции не требуется, к примеру для функции &amp;lt;code&amp;gt;Func&amp;lt;/code&amp;gt; с аргументами &amp;lt;code&amp;gt;Func(a,b=1,c=2)&amp;lt;/code&amp;gt; аргументы b и с можно опустить, при пропуске только переменной ''b'', можно осуществить вызов функции в виде, к примеру, &amp;lt;code&amp;gt;Func(1,,3)&amp;lt;/code&amp;gt;, при пропуске только переменной ''c'', функцию можно вызвать, к примеру, &amp;lt;code&amp;gt;Func(1,2)&amp;lt;/code&amp;gt;, при пропуске же обоих аргументов функцию можно вызвать просто как &amp;lt;code&amp;gt;Func(2)&amp;lt;/code&amp;gt;. Выражение, указываемое при определении аргумента, будет использоваться для его инициализации при вызове функции без указания аргумента. Выражения могут быть как простыми константами, так как сложными выражениями с использованием математических, логических функций и даже вызовов других функций объявленных в тексте программы. В случаях сложных выражений их вычисление происходит в момент вызова функции при помещении аргументов в стек переменных до исполнения блока инструкций самой функции.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Синтетический пример, показывающий инициализацию и работу с функциями, содержащими разные типы аргументов:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Синтетический пример, показывающий инициализацию и работу с функциями, содержащими разные типы аргументов:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l365&quot; &gt;Line 365:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 365:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Функ1(aTab.Значение,(Пер2),0);&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;//Произойдет вывод &amp;quot;Вызов осуществлен с аргументами: 0, 0, 0&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Функ1(aTab.Значение,(Пер2),0);&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;//Произойдет вывод &amp;quot;Вызов осуществлен с аргументами: 0, 0, 0&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Message(Пер2);&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;//Будет выведено число 0, так аргументом вызова функции была не переменная, а выражение &amp;quot;(Пер2)&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Message(Пер2);&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;//Будет выведено число 0, так аргументом вызова функции была не переменная, а выражение &amp;quot;(Пер2)&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Message(aTab.Значение);&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;//Будет выведено число &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;1 (функция изменила аргумент&lt;/del&gt;, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;что в свою очередь изменило значение столбца таблицы)&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Message(aTab.Значение);&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;&amp;amp;#9;//Будет выведено число &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;0&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;//&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Замечание: по окончании вызова Функ1 была выполнена операция&lt;/del&gt;, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;результат которой аналогичен исполнению выражения aTab.Значение:=ПерА;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;//Изменения внутри функции транслируются только на переменные, но не на свойства объектов&lt;/ins&gt;, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;так как это может создавать скрытые ошибки, которые тяжело будет найти:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;// &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; Изменение свойства, это не всегда просто сохранение значения&lt;/ins&gt;, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;в случае с объектами базы данных это может быть нежелательно&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>1&gt;Admin</name></author>
		
	</entry>
	<entry>
		<id>http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=3158&amp;oldid=prev</id>
		<title>Admin: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=3158&amp;oldid=prev"/>
		<updated>2021-02-07T06:55:22Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 06:55, 7 February 2021&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>
		
	</entry>
	<entry>
		<id>http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=3157&amp;oldid=prev</id>
		<title>Admin at 09:19, 28 January 2021</title>
		<link rel="alternate" type="text/html" href="http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;diff=3157&amp;oldid=prev"/>
		<updated>2021-01-28T09:19:54Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;http://sfsys.ru/index.php?title=%D0%9E%D0%B1%D1%89%D0%B5%D0%B5_%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B0&amp;amp;diff=3157&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Admin</name></author>
		
	</entry>
</feed>