Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: VB4,VB5,VB6
Expertise: Intermediate
Jul 10, 1999



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Polymorphic array procedures

You can create "polymorphic" routines that work with any type of array (except arrays of fixed-length strings, or UDTs) by using Variant parameters. Take for example the following code:

Function Sum(arr As Variant) As Variant
    Dim i As Long
    For i = LBound(arr) To UBound(arr)
        Sum = Sum + arr(i)
End Function
Interestingly, not only does the above routine work with any type of numeric arrays, it also works with array of strings (in which case it appends all the items in the array). It also works with arrays of Objects, provided that they expose a default property and that no type mismatch occurs when "summing" properties from different items.

The only disadvantage of this technique is that it is noticeably slower than code that works with a well-defined type of an array.

Francesco Balena
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date