Я даже не уверен, как мне задать этот вопрос, чтобы вы все получили то, о чем я прошу.Как ключевые слова работают на C#?
Мне интересно, как ключевые слова работают на языках программирования, будучи конкретными, C#. В приведенном ниже коде:
using System;
namespace TestApplication
{
class Program
{
static void Main(string[] args)
{
string s = "Hello";
Console.WriteLine(a.ToString());
Console.ReadLine();
}
}
}
Здесь Console
предопределенный класс System
пространства имен, который находится в mscorlib.dll. Поэтому, когда компилятор/CLR встречает Console.WriteLine()
, он будет вызывать статический метод WriteLine()
с соответствующей перегрузкой.
Таким образом, определение метода WriteLine
и Console
классов все уже записано и хранится в пространстве имен System для сборки mscorlib.
Но мой вопрос, когда компилятор/CLR встречается с ключевыми словами, как using
, namespace
, class
, static
, что он делает? Где написано, что он должен относиться к слову рядом с ключевым словом class
как новый тип? Он встроен в компилятор/CLR? Как это работает?
Ключевое слово - ключевое слово. Компилятор знает, когда дело доходит до слова «класс», что он должен что-то делать с тем, что следует (скомпилируйте его в новый класс). Это запрограммировано в компиляторе и указано в спецификациях языка C#. –
Проверьте «книгу драконов» или любую другую книгу/статью о компиляторах ... –
Не стесняйтесь [скачать спецификацию] (http://www.microsoft.com/en-us/download/details.aspx?id= 7029), если вы действительно этого хотите. –