<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; VBS: не получается сделать массив структур с массивом )]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=13559</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=13559&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «VBS: не получается сделать массив структур с массивом )».]]></description>
		<lastBuildDate>Sun, 25 Mar 2018 13:35:12 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: VBS: не получается сделать массив структур с массивом )]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=124233#p124233</link>
			<description><![CDATA[<p>Да в принципе надо было получить то - что получилось, без разницы как это называть.)) Получился динамический массив &quot;объектов&quot; и в каждом еще по одному динамическому массиву... Добавив в &quot;структуру&quot; конструктор и метод, в принципе получил класс))<br />Просто писать на vbs самый, в настоящий момент, удобный вариант, а синтаксис я его не шибко хорошо знаю, так что еще раз спасибо за помощь!</p>]]></description>
			<author><![CDATA[null@example.com (badhabit)]]></author>
			<pubDate>Sun, 25 Mar 2018 13:35:12 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=124233#p124233</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: не получается сделать массив структур с массивом )]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=124232#p124232</link>
			<description><![CDATA[<p><strong>badhabit</strong>, рад, что пригодилось. Вообще, ИМХО, VBS классы больше подразумеваются под объектную модель, нежели под структуры. Возможно Вашу задачу можно решить иначе. Если поведаете о конечной цели, возможно смогу посоветовать что-то более подходящее.</p>]]></description>
			<author><![CDATA[null@example.com (Xameleon)]]></author>
			<pubDate>Sun, 25 Mar 2018 12:19:00 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=124232#p124232</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: не получается сделать массив структур с массивом )]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=124227#p124227</link>
			<description><![CDATA[<p><strong>Xameleon</strong>, спасибо большое. Все заработало. Вот ещё ссылка по теме <a href="https://stackoverflow.com/questions/48067183/resizing-an-array-inside-of-an-object-in-vbscript">https://stackoverflow.com/questions/480 … n-vbscript</a></p>]]></description>
			<author><![CDATA[null@example.com (badhabit)]]></author>
			<pubDate>Sun, 25 Mar 2018 07:45:39 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=124227#p124227</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: не получается сделать массив структур с массивом )]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=124195#p124195</link>
			<description><![CDATA[<p><strong>badhabit</strong>,<br /></p><div class="quotebox"><cite>badhabit пишет:</cite><blockquote><p>Xameleon, так я привёл весь скрипт, просто проскролить надо, в самом низу есть объявление класса struct</p></blockquote></div><p>Прошу прощения. Не заметил.</p><p>Тогда вот так можно сделать:<br /></p><div class="codebox"><pre><code>Option Explicit

Main

Function Main
	Dim arr(), i, propArray
	For i = 0 To 10
		ReDim Preserve arr(i)
		Set arr(i) = New struct
		arr(i).sVar1 = &quot;str&quot; &amp; i &amp; &quot; var1&quot;
		arr(i).sVar2 = &quot;str&quot; &amp; i &amp; &quot; var2&quot;
		
		Dim j
		propArray = arr(i).aArr
		For j = 0 To 10
			ReDim Preserve propArray(j)
			propArray(j) = 121212 + j
		Next
		arr(i).aArr = propArray		
	Next
	
	Dim k
	For i = 0 To UBound(arr)
		WScript.Echo &quot;i: &quot; &amp; i &amp; &quot; var1: &quot; &amp; arr(i).sVar1 &amp; &quot; var2: &quot; &amp; arr(i).sVar2
		Dim zzz
		zzz = arr(i).aArr
		For k = 0 To UBound(zzz) - 1
			WScript.Echo zzz(k)
		Next
	Next	 
	
End Function


Class struct
	Public aArr
	Public sVar1
	Public svar2
	Private Sub Class_Initialize()
		aArr = Array()
	End Sub
End Class</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Xameleon)]]></author>
			<pubDate>Thu, 22 Mar 2018 09:37:20 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=124195#p124195</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: не получается сделать массив структур с массивом )]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=124177#p124177</link>
			<description><![CDATA[<div class="codebox"><pre><code>
Option Explicit

Main

Function Main
	Dim arr(), i, propArray
	For i = 0 To 10
		ReDim Preserve arr(i)
		Set arr(i) = New struct
		arr(i).sVar1 = &quot;str&quot; &amp; i &amp; &quot; var1&quot;
		arr(i).sVar2 = &quot;str&quot; &amp; i &amp; &quot; var2&quot;
		
		Dim j
		propArray = arr(i).aArr
		For j = 0 To 10
			ReDim Preserve propArray(j)
			propArray(j) = 121212 + j
		Next
		arr(i).aArr = propArray		
	Next
	
	Dim k
	For i = 0 To UBound(arr)
		WScript.Echo &quot;i: &quot; &amp; i &amp; &quot; var1: &quot; &amp; arr(i).sVar1 &amp; &quot; var2: &quot; &amp; arr(i).sVar2
		Dim zzz()
		zzz = arr(i).aArr
		For k = 0 To UBound(zzz) - 1
			WScript.Echo zzz(k)
		Next
	Next	 
	
End Function


Class struct
  Public aArr()
  Public sVar1
  Public svar2  
End Class
</code></pre></div><p>теперь ругается тут<br /></p><div class="quotebox"><blockquote><p>arr(i).aArr = propArray</p></blockquote></div><p>говрит<br />несоответствие типа</p>]]></description>
			<author><![CDATA[null@example.com (badhabit)]]></author>
			<pubDate>Wed, 21 Mar 2018 16:32:29 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=124177#p124177</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: не получается сделать массив структур с массивом )]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=124176#p124176</link>
			<description><![CDATA[<p><strong>Xameleon</strong>, так я привёл весь скрипт, просто проскролить надо, в самом низу есть объявление класса struct<br />Пс. Ваш способ попробую</p>]]></description>
			<author><![CDATA[null@example.com (badhabit)]]></author>
			<pubDate>Wed, 21 Mar 2018 12:28:20 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=124176#p124176</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: не получается сделать массив структур с массивом )]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=124172#p124172</link>
			<description><![CDATA[<p><strong>badhabit</strong>, а можно увидеть скрипт целиком ? А то объявления <strong>struct</strong> не видно.</p><p>На первый взгляд, как я понимаю, беда в том, что Вы пытаетесь &quot;редимить&quot; свойство объекта. К сожалению, VBScript хочет после Redim получить прямую ссылку на массив. Думаю в Вашем случае может помочь что-то типа:</p><div class="codebox"><pre><code>
Option Explicit

Main

Function Main
	Dim arr(), i, propArray
	For i = 0 To 10
		ReDim Preserve arr(i)
		Set arr(i) = New struct
		arr(i).sVar1 = &quot;str&quot; &amp; i &amp; &quot; var1&quot;
		arr(i).sVar2 = &quot;str&quot; &amp; i &amp; &quot; var2&quot;
		
		Dim j
		propArray = arr(i).aArr
		For j = 0 To 10
			ReDim Preserve propArray(j)
			propArray(j) = 121212 + j
		Next
		arr(i).aArr = propArray		
	Next
	
	For i = 0 To UBound(arr)
		WScript.Echo &quot;i: &quot; &amp; i &amp; &quot; var1: &quot; &amp; arr(i).sVar1 &amp; &quot; var2: &quot; &amp; arr(i).sVar2
	Next
	
End Function
</code></pre></div><p>Не уверен, что Вы выбрали правильный путь. Думаю всё-таки стоит взглянуть на всю картину целиком.</p>]]></description>
			<author><![CDATA[null@example.com (Xameleon)]]></author>
			<pubDate>Wed, 21 Mar 2018 10:37:31 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=124172#p124172</guid>
		</item>
		<item>
			<title><![CDATA[VBS: не получается сделать массив структур с массивом )]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=124164#p124164</link>
			<description><![CDATA[<p>Добрый день. Не знаю правильно ли я использовал терминологию в заголовке, все ж С/С++ ближе... Но есть потребность сделать динамический массив структур, в свою очередь каждая из которых тоже содержит &quot;мембером&quot; динамический массив... Попробовал вот так:<br /></p><div class="codebox"><pre><code>
Option Explicit

Main

Function Main
	Dim arr(), i
	For i = 0 To 10
		ReDim Preserve arr(i)
		Set arr(i) = New struct
		arr(i).sVar1 = &quot;str&quot; &amp; i &amp; &quot; var1&quot;
		arr(i).sVar2 = &quot;str&quot; &amp; i &amp; &quot; var2&quot;
		
		Dim j
		For j = 0 To 10
			ReDim Preserve arr(i).aArr(j)
			arr(i).aArr(j) = 121212 + j
		Next		
	Next
	
	For i = 0 To UBound(arr)
		WScript.Echo &quot;i: &quot; &amp; i &amp; &quot; var1: &quot; &amp; arr(i).sVar1 &amp; &quot; var2: &quot; &amp; arr(i).sVar2
	Next
	
End Function


Class struct
  Public aArr()
  Public sVar1
  Public svar2  
End Class
</code></pre></div><p>На строке </p><div class="quotebox"><blockquote><p>ReDim Preserve arr(i).aArr(j)</p></blockquote></div><p> валится с ошибкой: </p><div class="quotebox"><blockquote><p>Ошибка компиляции Microsoft VBScript: Предполагается наличие окончания инструкции</p></blockquote></div><p>Подскажите, что делаю не так...</p>]]></description>
			<author><![CDATA[null@example.com (badhabit)]]></author>
			<pubDate>Tue, 20 Mar 2018 20:46:44 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=124164#p124164</guid>
		</item>
	</channel>
</rss>
