Settings are similar to C-defines as they are pieces of text that are replaced in the repository by the console – instead of a preprocessor. The advantage of doing this by the console is that it can be done after deployment. Additionally, settings are type safe.
However, if you actually wanna use global variables use the memory adapter instead. You can combine these approaches: use the memory adapter for global access of values and the settings mechanism to set these values while starting up the runtime.