17 lines
1018 B
Plaintext
17 lines
1018 B
Plaintext
#title RCBasic Scope [RCBasic Doc]
|
|
#header SCOPE
|
|
|
|
Scope refers to where you are able to access a variable. Basically variables cannot be accessed from outside the scope they are created in. Look at the following:
|
|
#code
|
|
A = 5
|
|
|
|
While A < 10
|
|
B = 1 '----- B is created inside this loop and cannot be accessed outside of this loop
|
|
A = A + 1 '----- A was created before this loop started so it will be able to be used after this loop ends
|
|
Wend
|
|
|
|
Print B
|
|
#/code
|
|
|
|
The above program WILL NOT COMPILE. That is because the variable B was created inside the scope of the WHILE loop and nothing outside the WHILE loop will be able to access it. The variable A was created outside the WHILE loop so the variable A could be used anywhere in this example. So a variable can go into a deeper scope than where it was created but it cannot go to a lesser scope than where it was created. A scope deepens every time a new block is started. Blocks refer to the code within a loop, within a Function, or within a Sub Routine.
|