Toon posts:

Visual Basic empty array check?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik wil in Visual basic met een commando kunnen checken of een element bestaat in een array. Niet testen of ie leeg is want dat kun je niet checken met een if statement.

Kan iemand mij aan het commando helpen dat hierin voorziet? alvast bedankt.

  • whoami
  • Registratie: December 2000
  • Laatst online: 06:24
Zie wat sleur 'n pleur teweeg brengt. Dan denken mensen dat er voor alles wel al een voorgedefinieerde functie is. Voor sommige container classes zal die functie wel al bestaan, maar voor een gewone array zul je die in de meeste talen wel zelf moeten schrijven.

https://fgheysels.github.io/


  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 15-09 19:11

Crazy D

I think we should take a look.

Zoek eens in MSDN naar de array functies. Vind je ongetwijfeld o.a. de Ubound. Oeps verklap ik het nou? :P

Exact expert nodig?


  • gotcha
  • Registratie: Oktober 1999
  • Laatst online: 29-07 18:20
als je je nou echt niet druk wilt maken over dit soort dingen zou je ipv een array een dictionairy object kunnen gebruiken. als je er een beetje veel elementen instopt (100+) dan is 't vaak nog sneller ook dan zoeken door arrays.
en een dictionairy heeft standaard een .exists functie waar je makkelijk mee kan checken of een item bestaat. en je kan ook al het aantal items opvragen. makkelijk :Y)

(voor de diehard programmeurs: jaja een array is efficienter enzo maar dit is wel een stukkie minder foutgevoelig voor mensen die zich niet druk willen maken over hoe een array nou eigenlijk werkt...)

  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 08:26

mulder

ik spuug op het trottoir

Dictionary? Wass dat, in VB?

oogjes open, snaveltjes dicht


  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 15-09 19:11

Crazy D

I think we should take a look.

In VB is dat een Collection, alleen moet je dan zelf nog even je Exists functie schrijven.

Exact expert nodig?


  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 08:26

mulder

ik spuug op het trottoir

Ohhhhh, denk ik al heb ik wat gemist.

oogjes open, snaveltjes dicht


Verwijderd

Op donderdag 10 januari 2002 03:19 schreef Crazy_D het volgende:
In VB is dat een Collection, alleen moet je dan zelf nog even je Exists functie schrijven.
En niet vergeten om de _NewEnum ook in je klasse definitie mee te nemen, anders werkt For Each niet meer. Dit alleen natuurlijk als je zelf een collection klasse gaat schrijven (wat wel aan te raden is).

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 15-09 19:11

Crazy D

I think we should take a look.

Op donderdag 10 januari 2002 11:56 schreef hvdberg het volgende:
En niet vergeten om de _NewEnum ook in je klasse definitie mee te nemen, anders werkt For Each niet meer. Dit alleen natuurlijk als je zelf een collection klasse gaat schrijven (wat wel aan te raden is).
Daar gebruik ik altijd de classwizard voor :)
(alleen kun je die helaas niet aanpassen dat ie ook standaart een exists functie bakt).

Exact expert nodig?


Verwijderd

Op donderdag 10 januari 2002 12:02 schreef CrazyD_at_work het volgende:

[..]

Daar gebruik ik altijd de classwizard voor :)
(alleen kun je die helaas niet aanpassen dat ie ook standaart een exists functie bakt).
Zover ik weet bakt die class wizard in VB6 wel een collection maar dan één zonder _NewEnum (ik kan het vaud hebben).

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 15-09 19:11

Crazy D

I think we should take a look.

Op donderdag 10 januari 2002 12:21 schreef hvdberg het volgende:
Zover ik weet bakt die class wizard in VB6 wel een collection maar dan één zonder _NewEnum (ik kan het vaud hebben).
Uhmm misschien vergat ik nog wat ;)
Ik maak altijd 1 class aan waarin de waardes komen te staan, en met de wizard een collection class, en dan krijg ik een nette enum.

Exact expert nodig?


  • gotcha
  • Registratie: Oktober 1999
  • Laatst online: 29-07 18:20
yeah... ik bedoel dus het dictionairy object uit de Microsoft runtime class


Dim objDict As New Scripting.Dictionairy,
die dus wel ff reference maken naar Microsoft Scripting Runtime.

en die dictionairy heeft dus wel degelijk een exists functie

  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 08:26

mulder

ik spuug op het trottoir

Nou kan ik het niet goed onderbouwen, maar dan lijkt een wat nare oplossing. Weer een reference erbij, en nog wel naar een scripting object. Volgens mij is behoorlijk overdone. Probeer het maar zoveel mogelijk in code te doen.

oogjes open, snaveltjes dicht

Pagina: 1