Справочник по C#
Этот раздел содержит подробные справочные сведения о ключевых словах, операторах, специальных символах, директивах препроцессора, параметрах компилятора и ошибках и предупреждениях компилятора в среде C#.
Ключевые слова в C#
Ссылки на сведения о ключевых словах и синтаксисе языка C#.
Операторы в C#
Ссылки на сведения об операторах и синтаксисе языка C#.
Специальные символы в C#
Предоставляет ссылки на сведения о специальных контекстные символов в C# и их использовании.
Директивы препроцессора C#
Ссылки на сведения о командах компилятора для внедрения в исходном коде C#.
Параметры компилятора C#
Сведения о параметрах компилятора и их использовании.
Ошибки компилятора C#
Фрагменты кода, демонстрирующие причины и способы исправления ошибок и предупреждений компилятора C#.
Спецификация языка C#
Спецификация языка C# версии 6.0 Это черновой вариант для языка C# версии 6.0. Этот документ будет пересмотрен в рамках работы с комитетом по стандартам C# ECMA. Версия 5.0 была выпущена в декабре 2017 г. как стандартный 5-й выпуск ECMA-334.
Возможности, которые были реализованы в языке C# версий более поздних чем 6.0, представлены в предложениях по спецификации языка. В этих документах описываются изменения спецификации языка, связанные с добавлением новых функций. Это черновой вариант для формы. Эти спецификации будут улучшены и отправлены в комитет по стандартам ECMA для официального анализа и внедрения в будущую версию стандарта C#.
Предложения по спецификации C# 7.0
В версии C# 7.0 реализован ряд новых возможностей, включая сопоставления шаблонов, локальные функции, объявления выходной переменной, выражения throw, двоичные литералы и разделители между цифрами. Эта папка содержит спецификации для каждой из этих функций.
Предложения по спецификации C# 7.1
В версию C# 7.1 добавлено несколько новых возможностей. Можно написать метод Main , возвращающий Task или Task . Это позволяет добавлять модификатор async в метод Main . Выражение default можно использовать без типа в тех расположениях, где возможен вывод типа. Кроме того, появилось еще одно дополнительное усовершенствование: вывод имен элементов кортежа. И, наконец, сопоставление шаблонов можно использовать с универсальными шаблонами.
Предложения по спецификации C# 7.2
В версию C#7.2 добавлен ряд простых функций. С помощью ключевого слова in можно передавать аргументы по ссылке только для чтения. Внесен ряд незначительных изменений для поддержки безопасности во время компиляции для Span и связанных типов. В некоторых ситуациях можно использовать именованные аргументы, если следующие за ними аргументы являются позиционными. Модификатор доступа private protected позволяет указывать, что вызывающие объекты ограничены производными типами, реализованными в той же сборке. Оператор ?: можно использовать для разрешения в ссылку на переменную. С помощью разделителя начальных цифр можно форматировать шестнадцатеричные и двоичные числа.
Предложения по спецификации C# 7.3
Версия C# 7.3 является очередным промежуточным выпуском, содержащим несколько небольших обновлений. К параметрам универсальных типов можно применять новые ограничения. Другие изменения упрощают работу с полями fixed , включая использование выделений stackalloc . Локальные переменные, объявленные с ключевым словом ref , можно переназначать для указания на новое хранилище. Можно применять атрибуты к автоматически реализуемым свойствам, предназначенным для созданного компилятором резервного поля. Переменные выражений можно использовать в инициализаторах. Кортежи можно проверять на равенство (или неравенство). Кроме того, были внесены некоторые улучшения в разрешение перегрузки.
Предложения по спецификации C# 8.0
Версия C# 8.0 доступна для .NET Core 3.0. В число возможностей входят использование ссылочных типов, допускающих значения NULL, рекурсивное сопоставление шаблонов, методы интерфейса по умолчанию, асинхронные потоки, диапазоны и индексы, использование шаблонов и объявлений using, назначение объединения со значением NULL и члены экземпляров с доступом только на чтение.
Предложения по спецификации C# 9
Версия C# 9 доступна для .NET 5. Предлагаемые функции включают записи, инструкции верхнего уровня, усовершенствованное сопоставление шаблонов, методы задания только для инициализации, выражения new с целевым типом, модульные инициализаторы, расширение методов partial, статические анонимные функции, условные выражения с целевым типом, ковариантные типы возвращаемого значения, метод расширения GetEnumerator в циклах foreach, пустые переменные в качестве параметров лямбда-выражений, атрибуты для локальных функций, целочисленные значения с системным размером, указатели на функцию, подавляемое порождение флага localsinit и аннотации для параметров неограниченного типа.
Предложения по спецификации C# 10
Версия C# 10 доступна для .NET 6. Предлагаемые функции включают структуры записи, конструкторы структур без параметров, глобальные директивы «using», пространства имен на уровне файлов, шаблоны расширенных свойств, улучшенные интерполированные строки, постоянные интерполированные строки, улучшения функции лямбда, поддержку атрибута сведений о вызывающем выражении аргумента, расширенные директивы #line , универсальные атрибуты, улучшенный анализ определенного присваивания и переопределение AsyncMethodBuilder .
Связанные разделы
Использование среды разработки Visual Studio для C#
Ссылки на концептуальные разделы и разделы задач, описывающие интегрированную среду разработки и редактор.
Руководство по программированию на C#
Сведения об использовании языка программирования C#.
Знакомство с C#
Приветствуем вас в ознакомительном разделе руководств по C#. Занятия начинаются с интерактивного кода, который можно запускать в браузере. Прежде чем приступить к интерактивным урокам, вы можете ознакомиться с основами C#, просмотрев серию видеороликов «C# для начинающих».
В первых занятиях с помощью небольших фрагментов кода объясняются основные понятия языка C#. Вы изучите основы синтаксиса C# и научитесь работать с такими типами данных, как строки, числа и логические значения. Вся серия интерактивна, и уже через считанные минуты вы будете писать и запускать собственный код. Для первых занятий не требуются какие-либо знания в области программировании или опыт работы с языком C#.
Эти руководства можно проходить в разных средах. В них описываются одни и те же основные понятия. Различие в том, где именно вы будете работать.
- В браузере на платформе документации. В этом случае окно готового к запуску кода C# внедряется на страницы документации. Вы пишете и выполняете C# код в браузере.
- В среде Microsoft Learn. Эта схема обучения содержит несколько модулей для изучения основ C# .
- В Jupyter в проекте Binder. Вы можете поэкспериментировать с кодом C# в записной книжке Jupyter в проекте Binder.
- На локальном компьютере. После изучения кода в интерактивном режиме можно скачать пакет SDK для .NET и создавать программы на компьютере.
Все ознакомительные руководства, в которых используется пример приложения «Hello World», можно проходить в веб-браузере или в локальной среде разработки. В конце каждого руководства вам предлагается на выбор возможность пройти следующее занятие в браузере или на локальном компьютере. Чтобы настроить среду и продолжить изучение следующего руководства на компьютере, можно воспользоваться соответствующими ссылками.
Hello world
В руководстве Hello World вы создадите самую простую программу на C#. Вы ознакомитесь с типом string и способами работы с текстом. Можно также использовать схему обучения в Microsoft Learn или Jupyter в проекте Binder.
Числа в C#
Из руководства Числа в C# вы узнаете, как на компьютере хранятся числа и как выполнять вычисления с разными числовыми типами. Вы ознакомитесь с основами округления и научитесь выполнять математические вычисления с помощью C#. Это руководство можно изучить, используя локальный компьютер.
В этом руководстве предполагается, что вы уже прошли занятие Hello World.
Ветви и циклы
В руководстве Ветви и циклы представлены общие принципы организации ветвления кода в зависимости от значений, хранящихся в переменных. Вы узнаете, что такое поток управления, являющийся основой принятия решений и выбора различных действий в программах. Это руководство можно изучить, используя локальный компьютер.
В этом руководстве предполагается, что вы уже прошли занятия Hello World и Числа в C#.
Коллекция списков
Занятие Коллекция списков содержит обзор типа «Коллекция списков», в котором хранятся последовательности данных. Вы узнаете, как добавлять и удалять элементы, выполнять их поиск и сортировать списки. Вы ознакомитесь с различными типами списков. Это руководство можно изучить, используя локальный компьютер.
В этом руководстве предполагается, что вы уже прошли перечисленные выше занятия.
101 пример по LINQ
Для работы с этим примером требуется глобальный инструмент dotnet-try. После установки инструмента и клонирования репозитория try-samples можно изучить LINQ с помощью набора из 101 примера, которые можно запускать в интерактивном режиме. Вы можете исследовать различные способы отправки запросов к данным, исследования данных и преобразования последовательностей данных.