<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: В чём разница между Array.Remove(Index) и Array.RemoveAt(Index)]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=11178&amp;type=atom" />
	<updated>2015-12-27T07:20:21Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=11178</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: В чём разница между Array.Remove(Index) и Array.RemoveAt(Index)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=99963#p99963" />
			<content type="html"><![CDATA[<p>Спасибо большое за разъяснение.<br />Теперь буду использовать `RemoveAt` вместо `Remove`.</p>]]></content>
			<author>
				<name><![CDATA[Danil_Valov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33565</uri>
			</author>
			<updated>2015-12-27T07:20:21Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=99963#p99963</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: В чём разница между Array.Remove(Index) и Array.RemoveAt(Index)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=99962#p99962" />
			<content type="html"><![CDATA[<p><a href="https://autohotkey.com/docs/objects/Object.htm#Remove">Remove</a> это из старых версий ahk. Эта команда может удалять элементы из массива или очищать(устанавливать пустое значение).</p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header"><strong>+</strong>&nbsp;Если не указывать параметров, то удаляется последний элемент</div><div class="fancy_spoiler"><div class="codebox"><pre><code>x := [&quot;A&quot;,&quot;B&quot;,&quot;C&quot;,&quot;D&quot;,&quot;E&quot;]

MsgBox % &quot;Элемент: &quot; x.Remove()

MsgBox % &quot;A`t&quot; x[1]
     . &quot;`nB`t&quot; x[2]
     . &quot;`nC`t&quot; x[3]
     . &quot;`nD`t&quot; x[4]
     . &quot;`nE`t&quot; x[5]</code></pre></div></div></div><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header"><strong>+</strong>&nbsp;Если указать первый параметр, это номер элемента. Все то что после него смещается.</div><div class="fancy_spoiler"><div class="codebox"><pre><code>x := [&quot;A&quot;,&quot;B&quot;,&quot;C&quot;,&quot;D&quot;,&quot;E&quot;]

MsgBox % &quot;Элемент: &quot; x.Remove(3)

MsgBox % &quot;A`t&quot; x[1]
     . &quot;`nB`t&quot; x[2]
     . &quot;`nC`t&quot; x[3]
     . &quot;`nD`t&quot; x[4]
     . &quot;`nE`t&quot; x[5]</code></pre></div></div></div><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header"><strong>+</strong>&nbsp;Если указать второй параметр как пустые скобки, То этот элемент очищается.</div><div class="fancy_spoiler"><div class="codebox"><pre><code>x := [&quot;A&quot;,&quot;B&quot;,&quot;C&quot;,&quot;D&quot;,&quot;E&quot;]

MsgBox % &quot;Элемент: &quot; x.Remove(3,&quot;&quot;)

MsgBox % &quot;A`t&quot; x[1]
     . &quot;`nB`t&quot; x[2]
     . &quot;`nC`t&quot; x[3]
     . &quot;`nD`t&quot; x[4]
     . &quot;`nE`t&quot; x[5]</code></pre></div></div></div><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header"><strong>+</strong>&nbsp;Если указать второй параметр как номер элемента, то в диапазоне от первого до другого элемента все удалится</div><div class="fancy_spoiler"><div class="codebox"><pre><code>x := [&quot;A&quot;,&quot;B&quot;,&quot;C&quot;,&quot;D&quot;,&quot;E&quot;]

MsgBox % &quot;Элементов: &quot; x.Remove(1,3)

MsgBox % &quot;A`t&quot; x[1]
     . &quot;`nB`t&quot; x[2]
     . &quot;`nC`t&quot; x[3]
     . &quot;`nD`t&quot; x[4]
     . &quot;`nE`t&quot; x[5]</code></pre></div></div></div><p>Очистить группу элементов через remove нельзя.</p><p>В новых версиях ahk команду remove заменяют <a href="https://autohotkey.com/docs/objects/Object.htm#RemoveAt_v1121+">RemoveAt</a>, <a href="https://autohotkey.com/docs/objects/Object.htm#Delete_v1121+">Delete</a> и <a href="https://autohotkey.com/docs/objects/Object.htm#Pop_v1121+">pop</a>.<br />RemoveAt может только удалять элемент или группу элементов.<br />Delete может только очищать элемент или группу элементов.<br />pop может только удалять последний элемент из списка.<br />В RemoveAt и Delete второй параметр указывается не точной позицией элемента как в remove, а количество элементов.</p>]]></content>
			<author>
				<name><![CDATA[yalanne]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=32850</uri>
			</author>
			<updated>2015-12-26T21:40:11Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=99962#p99962</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[AHK: В чём разница между Array.Remove(Index) и Array.RemoveAt(Index)]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=99961#p99961" />
			<content type="html"><![CDATA[<p>В общем, сабж. В чём разница между этими командами? Ведь выполняют они одно и то же.</p><p>Пример:</p><div class="codebox"><pre><code>TestStr := &quot;111 222 333 444&quot;

; Режем массив Test1 из строки
Test1 := StrSplit(TestStr, &quot; &quot;)
; и удаляем 2-й элемент через Array.RemoveAt(Index)
Test1.RemoveAt(2)

; Выводим массив Test1
MsgBox, % &quot;Test1`nLength: &quot; Test1.MaxIndex() &quot;`n`nItem #1: &quot; Test1[1] &quot;`nItem #2: &quot; Test1[2] &quot;`nItem #3: &quot; Test1[3] &quot;`nItem #4: &quot; Test1[4]


; Режем массив Test2 из строки
Test2 := StrSplit(TestStr, &quot; &quot;)
; и удаляем 2-й элемент через Array.RemoveAt(Index)
Test2.Remove(2)

; Выводим массив Test2
MsgBox, % &quot;Test2`nLength: &quot; Test2.MaxIndex() &quot;`n`nItem #1: &quot; Test2[1] &quot;`nItem #2: &quot; Test2[2] &quot;`nItem #3: &quot; Test2[3] &quot;`nItem #4: &quot; Test2[4]
</code></pre></div><p>На выходе получим абсолютно идентичный результат.</p>]]></content>
			<author>
				<name><![CDATA[Danil_Valov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33565</uri>
			</author>
			<updated>2015-12-26T20:16:39Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=99961#p99961</id>
		</entry>
</feed>
