However, in a few cases, global variables can be suitable for use.
- At level 2 we place global variables for our program.
QuickDraw maintains a number of global variables per process, chief among these being the current port.
A situation like this usually calls for a global variable.
Static members of public classes can substitute for global variables and functions.
The use of global variables makes software harder to read and understand.
The setting of a global variable can create side effects that are hard to locate and predict.
As a result, becomes a global variable that can be accessed without the scope of the function.
An obvious solution is to never use a global variable in such a manner.
A outside a subroutine has no effect (global variables need not be declared).