Why we do not have global variables in C#?



C# does not have global variables and the scope resolution operator used in C++ for global variables is related to namespaces. It is called global namespace alias.

If you have a type that shares an identifier in a different namespace, then to identify them using the scope resolution operator.

For example, to reference System.Console class, use the global namespace alias with the scope resolution operator −

global::System.Console

Let us now see an example −

Example

 Live Demo

using myAlias = System.Collections; namespace Program {    class Demo {       static void Main() {          myAlias::Hashtable h = new myAlias::Hashtable();          h.Add("M", "1");          h.Add("N", "2");          h.Add("O", "3");          h.Add("P", "4");          foreach (string n in h.Keys) {             global::System.Console.WriteLine(n + " " + h[n]);          }       }    } }

Output

N 2 O 3 M 1 P 4
Updated on: 2020-06-20T11:35:21+05:30

257 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements