Forum Discussion

btpoole's avatar
btpoole
Channel Surfer
12 years ago

Function Help

Having trouble with simple function. I can't seem to pass variable from one function to another. Is the example code correct in passing the value of d to the function main?
Additional info when i run the code below i get error saying use of uninitialized variable. I assume it is referring to d.
Thanks
function main () as object
getd()
a=2
b=3
c=(a+b) * d
print c
end function


Function getd () as object
d=1 + 2
return
end function

2 Replies

  • No, all variables are scoped to the function they are in. This means they're not visible from another function. To have getd change the value of d, you need to explicitly return it, like this:


    function main () as object
    d = getd()
    a=2
    b=3
    c=(a+b) * d
    print c
    end function


    Function getd () as integer
    d=1 + 2
    return d
    end function


    Also, if you want to pass a variable in the other direction, INTO a function, it needs to be declared as a parameter in the function definition, like this:


    function AddOne(x as Integer) as Integer
    return x+1
    end function


    --Mark