
AutoHotkey Variadic Functions can be incredibly handy when you don’t know the exact number of parameters. The below example shows some simple math where you can pass any number of parameters to be added. It also demonstrates how you can use MaxIndex() to determine how many parameters were passed to the function.
Browser_Forward::Reload
Browser_Back::
;***********variadic function*******************
MsgBox % math(1,2)
MsgBox % math(1,2,3)
MsgBox % math(1,2,3,4)
math(x*){
tot:=0
for k, y in X
tot:=y + tot
loop, % x.MaxIndex() ;Loop over the # of parameters that exist
Indiv.= x[A_Index] "+"
return SubStr(Indiv,1,(StrLen(Indiv)-1)) "=" tot ;use substr to remove the last + sign
}


