Programozási ismeretek haladóknak-2/19C

13

Programozási ismeretek haladóknak-2/19C


Érték és hivatkozás típusú változók
Lista hivatkozás típusú elemekkel (például halmaz, lista)
Lista érték típusú elemekkel (például struktúra)

Házi feladat
Olvasd el:
Kollekciók alkalmazása/Struktúrák/Kollekciókat tartalmazó struktúra
Oldd meg:
Kollekciók alkalmazása/Struktúrák/Alma, Verseny

Megjegyzés
Ha egy struktúra tartalmaz lista típusú mezőt, akkor ennek kezelése nagyon hasonló a tömb típusú mezőkhöz [lásd a 33. D) videót a Programozási ismeretek-3 lejátszási listában].
Arra ügyelj, hogy a struktúraváltozó deklarálása után létre kell hozni a listát! Ha például a struktúrákat tömbben tároljuk:

Structure TDiák
  Dim Név As String
  Dim Jegyek As List(Of Integer) ' itt nem szerepelhet a New operátor, mert a Structure egy típus definíciója
End Structure
Dim Diákok(100) As TDiák
For I=1 To 100
  Diákok(I) = New List(Of Integer) ' a cikluson belül kell létrehozni a listákat!
Next

A listák először üresek. Bővítésük például:
Diákok(50).Jegyek.Add(5)

Ugyanez listában tárolt struktúrákra:

Dim Diákok As New List(Of TDiák)
Dim Diák As TDiák ' segédváltozó (mivel érték típusú, nem kell a ciklusban létrehoznunk)
For I=0 To 99
    Diákok.Add(New TDiák) ' a listaelemet hozza létre
    ' Egy listaelem mezőjét közvetlenül nem módosíthatjuk, ezért segédváltozót használunk:
    Diák.Jegyek = New List(Of Integer) ' a ciklusban kell létrehozni az aktuális diák Jegyek listáját!
    Diákok(I) = Diák
Next

Egy jegy hozzáadása például (a Jegyek hivatkozás típusú változó, ezért közvetlenül elérjük és módosíthatjuk):
Diákok(49).Jegyek.Add(5)

More Less


Programozási ismeretek, Programozási ismeretek haladóknak - 2.

Informatics

VisualBasic,VisualStudio,programozás,VB,informatika,érettségi,lista,struktúra,dinamikustömb,értéktípusúváltozó,hivatkozástípusúváltozó,struktúra

Tibor Juhász (lecturer)

18:32

20 January, 2019

Zalaegerszegi Zrínyi Miklós Gimnázium Sulinet Multimédia

20 January, 2019

13
<iframe width="480" height="385" src="//dev.videotorium.hu/en/embed/29398" frameborder="0" allowfullscreen="allowfullscreen"></iframe>