Doel:
Een zelfgemaakt object (clsObject) die in een lus zit toe te voegen aan een collection of iets gelijkaardig
Probleem:
Doordat deze in de lus zit, en ik deze met .Add toevoeg aan de collectie, zijn alle items gelijk aan het laatste item.
Oorzaak: .Add is ByRef
Oplossing:
Een tweede object (clsObjecten) aanmaken en het vorige object toevoegen in een array
m_aItems(m_iCount) = v_clsItem: Hier gaat het fout
m_aItems(m_iCount) & v_clsItem zijn beiden van het type clsObject
zet ik er SET voor werkt dit wel, maar dan zit ik met hetzelfde probleem, omdat set ByRef is
Wat doe ik verkeerd, sorry dat ik her hier kom vragen, docent is afwezig, en zou graag voortdoen aan eindwerk
Waarschijnlijk elementaire fout
Een zelfgemaakt object (clsObject) die in een lus zit toe te voegen aan een collection of iets gelijkaardig
Probleem:
Doordat deze in de lus zit, en ik deze met .Add toevoeg aan de collectie, zijn alle items gelijk aan het laatste item.
Oorzaak: .Add is ByRef
Oplossing:
Een tweede object (clsObjecten) aanmaken en het vorige object toevoegen in een array
Visual Basic:
1
2
3
4
5
6
| Public Sub Add(ByVal v_clsItem As clsObject) 'Toevoegen van een object ReDim Preserve m_aItems(m_iCount) 'Array van objecten met 1 vergroten Set m_aItems(m_iCount) = New clsObject m_aItems(m_iCount) = v_clsItem 'Poging tot object toe te voegen aan array van objecten m_iCount = m_iCount + 1 'Aantal items onthouden End Sub |
m_aItems(m_iCount) = v_clsItem: Hier gaat het fout
m_aItems(m_iCount) & v_clsItem zijn beiden van het type clsObject
zet ik er SET voor werkt dit wel, maar dan zit ik met hetzelfde probleem, omdat set ByRef is
Wat doe ik verkeerd, sorry dat ik her hier kom vragen, docent is afwezig, en zou graag voortdoen aan eindwerk
Waarschijnlijk elementaire fout