Repository navigation
CSharp Directives
Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
Директиви починаються з # на початку рядка: #if/#elif/#else/#endif, #define, #undef, #region, #endregion, #warning, #error, #line, #pragma, #nullable. Вони керують компіляцією чи діагностикою. #region організує редактор, але з створює область видимості.
Збережіть цей приклад окремо як Example.cs. Запускайте його незалежно від інших прикладів на сторінці.
Example.cs:
// PROJECT-EXAMPLE
#define REPORT
#if REPORT
System.Console.WriteLine("Enabled");
#else
System.Console.WriteLine("Disabled");
#endifРезультат:
Enabled
#nullable enable
string? name = null;
UO.Print(name ?? "unknown");#if DEBUG
UO.Print("Debug configuration");
#else
UO.Print("Regular configuration");
#endifЗвичайний проект задає TargetFramework, LangVersion, Nullable, AllowUnsafeBlocks та інші властивості в .csproj. Синтаксис визначається компілятором, а доступні API - Також цільовою платформою та залежностями.
З сучасних можливостей C# важливі raw-рядки, collection expressions, primary constructors, list patterns, required, розширені ref-можливості, розширення та властивості з field. Для точних умов конкретної версії використовуйте офіційну історію мови; preview-можливості включаються окремим параметром проекту.
Офіційна документація: Директиви, версія мови та параметри компіляції – Microsoft Learn.
ClassicUO — Bad Newbie & C# Scripts IDE