Есть ли сжатый термин для фазы компилятора или интерпретатора, который идентифицирует специальные методы, такие как конструкторы и деструкторы? Я думаю, что это, вероятно, подходит под семантический анализ где-то, но мне интересно, существует ли более конкретный термин, который может быть полезен при назначении функции, которая выполняет такую обязанность.Название для фазы компилятора/интерпретатора, которая идентифицирует специальные методы?
0
A
ответ
1
Я не знаю стандартного названия. Как насчет Специальный метод маркировки?
Обратите внимание, что конструкторы/деструкторы могут на многих языках идентифицироваться только с помощью грамматики, поэтому нет необходимости в определении фазы или имени.
0
«Фаза» в конструкции компилятора соответствует полному переходу по исходному тексту или дереву синтаксического анализа. Нет необходимости в такой «фазе» для обработки конструкторов, деструкторов, перегруженных операторов и т. Д. Это происходит как часть фаз семантического анализа и генерации кода.
Как правило, между начальным синтаксическим анализом и семантическим анализом и формированием конечного кода существует несколько этапов, некоторые из которых являются обобщенными (например, анализ потока данных) и некоторые из них являются довольно специализированными. Просто распознавание компонента, такого как «конструктор», как правило, будет семантическим анализом, но сделать что-то особенное для такого метода будет отдельным шагом. –
Не было бы такой фазы. Это произойдет как часть семантического анализа. – EJP
Вам нужно предположить, что они просто не особо особенны. Это легко обнаружить при анализе кода, что является прямым следствием синтаксиса языка. Таким образом, они могут быть непосредственно помечены в таблице символов. –