[VB6] Optional array werkt niet

Pagina: 1
Acties:

  • nenne
  • Registratie: Juni 2004
  • Laatst online: 06-06-2024
Hallo,

Ik geef aan een bepaalde methode soms een gevulde array mee, soms ook niet.

In de methode zelf wil ik controleren of de array gevuld is of niet.

Aanvankelijk deed ik dat als volgt:

Visual Basic:
1
Public Sub Blaat(Optional arrayBlaat() as String)


Helaas werkt het Optional-statement niet als het een array betreft, want de code wordt rood.
Ook de functie IsEmpty(arrayBlaat) werkt niet, want hij geeft aan dat de array altijd gevuld is, terwijl ik deze helemaal niet vul.

Heeft iemand een tip?

  • Limhes
  • Registratie: Oktober 2001
  • Laatst online: 09-04 16:10
En je kan niet altijd een array meegeven en kijken hoe groot UBound-LBound is? Dan weet je namelijk of er items in zitten of niet.

  • nenne
  • Registratie: Juni 2004
  • Laatst online: 06-06-2024
Limhes schreef op 01 juli 2004 @ 11:41:
En je kan niet altijd een array meegeven en kijken hoe groot UBound-LBound is? Dan weet je namelijk of er items in zitten of niet.
Dat heb ik met het volgende statement geprobeerd:

Visual Basic:
1
2
3
If UBound(arrayBlaat) > 0 Then
  ....
End If


Bij UBound klapt ie er echter uit omdat de array niet gevuld is....

[ Voor 3% gewijzigd door nenne op 01-07-2004 11:50 ]


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20:27

gorgi_19

Kruimeltjes zijn weer op :9

Bij optional moet je wel een definitie geven
Visual Basic .NET:
1
2
3
Public Sub test(Optional ByVal ket() As String = Nothing)
    '
End Sub

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • nenne
  • Registratie: Juni 2004
  • Laatst online: 06-06-2024
gorgi_19 schreef op 01 juli 2004 @ 11:54:
Bij optional moet je wel een definitie geven
Visual Basic .NET:
1
2
3
Public Sub test(Optional ByVal ket() As String = Nothing)
    '
End Sub
Ik heb het inmiddels opgelost met de functie IsArray(). Als een array leeg is, geeft de functie namelijk de waarde False. // Dit is onzin, forget about it.

Hmmm bovenstaand stukje code van je werkt niet bij mij, ik puzzle even verder :r

[ Voor 16% gewijzigd door nenne op 01-07-2004 12:03 ]


  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 19:54

RayNbow

Kirika <3

Optional argument must be Variant of intrinsic type with a default value
Druk op de Help knop... :P
You tried to specify Optional with aparameter that has no default value, for example, anarray. Make sure any argument specified as Optional has a default value
Lijkt me duidelijk ;)

Dus zoek met Google op vb optional array variant argument en je vindt een mooi voorbeeld: ArrayAvg - The average of an array of any type

Ipsa Scientia Potestas Est
NNID: ShinNoNoir

Pagina: 1