Simplify your code with Inc and Dec functions

Unlike other languages – such as C and Delphi – VB lacks of the capability to increment and decrement a variable. Adding this feature, in the form of reusable Function routines, is simple:

Function Inc(Value As Variant, Optional Increment As Variant = 1) As Variant    Value = Value + Increment    Inc = ValueEnd FunctionFunction Dec(Value As Variant, Optional Decrement As Variant = 1) As Variant    Value = Value - Decrement    Dec = ValueEnd Function

The above routines declare the argument as Variant, so you can use them with any numeric data type, as in:

Dim x As Long, y As Single' increment a Long value by oneInc x' increment a floating point variable by 0.1Inc y, 0.1

You may argue whether using the Inc/Dec routines is going to make your code more or less readable. However, these functions prove to be more useful when they appear inside expressions:

' evaluate the sum of the squares of the first 100 integer numbers' (of course, you can do this also with a For-Next loop,'  but this is only an example)Dim N As Long, Sum As LongDo While N <= 100    ' increment N, square it, and add to the Sum variable    Inc Sum, Inc(N) ^ 2Loop

A final note: the Inc/Dec routines are slow, at least compared with inline addition and subtraction operations. For this reason you should never use them inside time-critical loops.

Share the Post:
Share on facebook
Share on twitter
Share on linkedin


Recent Articles: