Looking for c# Keywords? Try Ask4Keywords

C# Language Определение и определение символов


пример

Символом компилятора является ключевое слово, которое определено во время компиляции, которое можно проверить для условного выполнения определенных разделов кода.

Существует три способа определения символа компилятора. Их можно определить с помощью кода:

#define MYSYMBOL

Они могут быть определены в Visual Studio в разделе «Свойства проекта»> «Создать»> «Условные символы компиляции»:

Символы компилятора VS

(Обратите внимание, что DEBUG и TRACE имеют свои собственные флажки и не обязательно должны быть указаны явно).

Или они могут быть определены во время компиляции с использованием ключа /define:[name] на компиляторе C #, csc.exe .

Вы также можете использовать неопределенные символы, используя директиву #undefine .

Наиболее распространенным примером этого является символ DEBUG , который определяется Visual Studio, когда приложение скомпилировано в режиме отладки (в отличие от режима Release).

public void DoBusinessLogic()
{
    try
    {
        AuthenticateUser();
        LoadAccount();
        ProcessAccount();
        FinalizeTransaction();
    }
    catch (Exception ex)
    {
#if DEBUG
        System.Diagnostics.Trace.WriteLine("Unhandled exception!");
        System.Diagnostics.Trace.WriteLine(ex);
        throw;
#else
        LoggingFramework.LogError(ex);
        DisplayFriendlyErrorMessage();
#endif
    }
}

В приведенном выше примере, когда в бизнес-логике приложения возникает ошибка, если приложение скомпилировано в режиме отладки (и установлен символ DEBUG ), ошибка будет записана в журнал трассировки, и исключение будет повторно -отброса для отладки. Однако, если приложение скомпилировано в режиме деблокирования (и не установлен символ DEBUG ), среда регистрации используется для тихого регистрации ошибки, и для конечного пользователя отображается дружественное сообщение об ошибке.