Оглавление:
Определение - что означает Директива препроцессора?
Директивы препроцессора - это строки, включенные в программу, которые начинаются с символа #, что отличает их от обычного текста исходного кода. Они вызываются компилятором для обработки некоторых программ перед компиляцией. Директивы препроцессора изменяют текст исходного кода, и в результате получается новый исходный код без этих директив.
Хотя предварительная обработка в C # концептуально аналогична C / C ++, она отличается в двух аспектах. Во-первых, предварительная обработка в C # не включает отдельный этап для выполнения препроцессора перед компиляцией. Он обрабатывается как часть фазы лексического анализа. Во-вторых, его нельзя использовать для создания макросов. Кроме того, новые директивы #region и #unregion были добавлены в C # вместе с исключением некоторых ранее использованных директив (#include - это заметная директива, использование которой заменяется на «using» для включения сборок).
Java не поддерживает директивы препроцессора.
Techopedia объясняет директиву препроцессора
Директива препроцессора обычно помещается в верхней части исходного кода отдельной строкой, начинающейся с символа «#», за которым следует имя директивы и необязательный пробел до и после него. Поскольку комментарий к той же строке объявления директивы препроцессора должен использоваться и не может прокручивать следующую строку, комментарии с разделителями нельзя использовать. Инструкция директивы препроцессора не должна заканчиваться точкой с запятой (;). Директивы препроцессора могут быть определены в исходном коде или в общей строке как аргумент во время компиляции.
Примеры директив предварительной обработки, которые можно использовать в C #, включают:
- #define и #undef: для определения и отмены определения символов условной компиляции соответственно. Эти символы могут быть проверены во время компиляции, а требуемый раздел исходного кода может быть скомпилирован. Область символа - это файл, в котором он определен.
- #if, #elif, #else и #endif: пропустить часть исходного кода на основе условий. Условные разделы могут быть вложены с директивами, образующими полные наборы.
- #line: для контроля номеров строк, генерируемых для ошибок и предупреждений. Это в основном используется инструментами метапрограммирования для генерации исходного кода C # из некоторого текстового ввода. Обычно он используется для изменения номеров строк и имен исходных файлов, сообщаемых компилятором в его выходных данных.
- #error и #warning: для генерации ошибок и предупреждений соответственно. #error используется для остановки компиляции, в то время как #warning используется для продолжения компиляции с сообщениями в консоли.
- #region и #endregion: для явной пометки разделов исходного кода. Они позволяют разворачиваться и сворачиваться в Visual Studio для лучшей читаемости и справочности.