The programming language behind Delphi is Object Pascal whose origin is in Pascal structured, that is, not object-oriented. For this reason there is support for global variables in the syntax. But in an object-oriented program it is not good practice to use global variables.
If you still want to use global variables keep the following rules in mind:
1- Global variables are not related to any class.
2- They are declared in the INTERFACE section of the unit and when used it is good practice to follow the syntax UnitName.VariableName. Example: UnitPessoa.QtdePopulacao: = 1234;
3- They can be referred to in all program codes, procedure, function and methods that use the unit in which the variable is defined;
4- They can be initialized or finalized in the INITIALIZATION AND FINALIZATION sections of the unit in which it is declared.
Static variables of the "Class Var" classes follow the following rules:
1- They are declared in the definition of the class and its value is shared by all instances of the class.
2- Class methods can refer to them;
My final suggestion:
1- Use global variable when it stores information related to Unit in which it is declared, and not specific to a particular class of this unit;
2. In all other cases, use class variable that is more elegant, more elucidative, and follows what is defined as good OO practice.