Keywords are predefined, reserved identifiers that have special meanings to the compiler. They cannot be used as identifiers in your program unless they include @ as a prefix. For example, @if is a valid identifier but if is not because if is a keyword.
The first table in this topic lists keywords that are reserved identifiers in any part of a C# program. The second table in this topic lists the contextual keywords in C#. Contextual keywords have special meaning only in a limited program context and can be used as identifiers outside that context. Generally, as new keywords are added to the C# language, they are added as contextual keywords in order to avoid breaking programs written in earlier versions.
|
A contextual keyword is used to provide a specific meaning in the code, but it is not a reserved word in C#. Some contextual keywords, such as partial and where, have special meanings in two or more contexts.
Concepts
Other Resources
- In a "foreach, in" statement - http://msdn.microsoft.com/en-us/library/ttw7t8t6.aspx
- As a "generic modifier" - http://msdn.microsoft.com/en-us/library/dd469484.aspx
Edit by SJ at MSFT: That's why there are two entries for "in" in the table. Or am I missing your point?
See http://www.eggheadcafe.com/articles/20030114.asp for information about these keywords.