What is the real use of indexer in C#?
It looks pretty confusing as I am a new c# programmer. It looks like an array of objects but it\'s not.
The purpose of an indexer is just that it works like an array, but you specify code for what's happening when you read from and write to the indexer.
An indexer could do pretty much anything to provide a collection like behviour. Usually there is some kind of private collection that you offer read or read/write access to using the indexer.
An enum can not use char as it's base type, but you can use character literals to specify an integer value:
public enum Characters : int {
    Alpha = 'a',
    Beta = 'b'
}
Characters.Alpha will have the value 97, and Characters.Alpha.ToString() will return the string "Alpha". (char)Characters.Alpha gives the value 'a'.