Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
- Предисловие
- Введение
- Область §1
- §2 Нормативные ссылки
- §3 Термины и определения
- §4 Общее описание
- Соответствие §5
-
§6 Лексическая структура
- Программы §6.1
- §6.2 Грамматики
-
Лексический анализ §6.3
- §6.3.1 Общее
- §6.3.2 Конца линии
- Примечания §6.3.3
- §6.3.4 Пробелы
- Токены §6.4
- Директивы предварительной обработки §6.5
-
Основные понятия §7
- Запуск приложения §7.1
- §7.2 Завершение приложения
- Объявления §7.3
- Члены §7.4
-
Доступ к члену §7.5
- §7.5.1 Общее
- §7.5.2 Объявленная доступность
- Домены специальных возможностей §7.5.3
- §7.5.4 Защищенный доступ
- Ограничения специальных возможностей §7.5.5
- §7.6 Сигнатуры и перегрузка
- Области §7.7
- §7.8 Пространства имен и имена типов
- §7.9 Автоматическое управление памятью
- §7.10 Порядок выполнения
-
Типы §8
- §8.1 Общие
-
Ссылочные типы §8.2
- §8.2.1 Общие
- Типы классов §8.2.2
- §8.2.3 Тип объекта
- §8.2.4 Динамический тип
- §8.2.5 Тип строки
- Типы интерфейсов §8.2.6
- Типы массивов §8.2.7
- Типы делегатов §8.2.8
-
Типы значений §8.3
- §8.3.1 Общее
- §8.3.2 Тип System.ValueType
- Конструкторы по умолчанию §8.3.3
- Типы структур §8.3.4
- §8.3.5 Простые типы
- §8.3.6 Целочисленные типы
- Типы с плавающей запятой 8.3.7
- §8.3.8 Десятичный тип
- §8.3.9 Тип Bool
- Типы перечисления §8.3.10
- Типы кортежей §8.3.11
- Типы значений, допускающих значение NULL,8.3.12
- §8.3.13 Бокс и распаковка
-
§8.4 Созданные типы
- §8.4.1 Общее
- Аргументы типа §8.4.2
- §8.4.3 Открытые и закрытые типы
- §8.4.4 Привязанные и несвязанные типы
- §8.4.5 , удовлетворяющие ограничения
- Параметры типа §8.5
- Типы деревьев выражений §8.6
- §8.7 Динамический тип
- §8.8 Неуправляемые типы
-
§8.9 Ссылочные типы и допустимость значений NULL
- §8.9.1 Общие
- Типы ссылок, не допускающие значения NULL, §8.9.2
- Типы ссылок, допускающие значение NULL,8.9.3
-
Контекст, допускающий значение NULL,8.9.4
- §8.9.4.1 Общее
- Disable §8.9.4.2 Nullable
- §8.9.4.3 , допускающие значение NULL, заметки
- Предупреждения , допускающие значение NULL,8.9.4.4
- Включение в формате NULL §8.9.4.5
- §8.9.5 Налицие значений null и состояния null
-
§9 Переменные
- §9.1 Общие
-
Категория переменных §9.2
- §9.2.1 Общее
- §9.2.2 Статические переменные
- §9.2.3 Переменные экземпляра
- Элементы массива §9.2.4
- Параметры значения §9.2.5
- Параметры ссылки на §9.2.6
- Параметры выходных данных §9.2.7
- §9.2.8 Входные параметры
- §9.2.9 Локальные переменные
- Значения по умолчанию §9.3
-
§9.4 Определенное назначение
- §9.4.1 Общее
- §9.4.2 Первоначально назначенные переменные
- §9.4.3 Изначально неназначенные переменные
-
§9.4.4 Точные правила определения определенного назначения
- §9.4.4.1 Общее
- §9.4.4.2 Общие правила для инструкций
- §9.4.4.3 Блокируемые операторы, проверенные и снятые операторы
- Операторы выражений §9.4.4.4
- Операторы объявления §9.4.4.5
- §9.4.4.6 Если операторы
- Операторы switch §9.4.4.7 Switch
- §9.4.4.8 В то время как операторы
- Операторы Do §9.4.4.9
- §9.4.4.10 Для заявлений
- §9.4.4.11 Break, continue и goto statements
- Операторы Throw §9.4.4.12 Throw
- Операторы Return §9.4.4.13
- Операторы Try-catch 9.4.4.14
- §9.4.4.15 Инструкции Try-finally
- §9.4.4.16 Инструкции Try-catch-finally
- §9.4.4.17 Инструкции Foreach
- §9.4.4.18 Использование операторов
- Операторы блокировки §9.4.4.19
- Операторы доходности §9.4.4.20
- §9.4.4.21 Общие правила для константных выражений
- §9.4.4.22 Общие правила для простых выражений
- §9.4.4.23 Общие правила для выражений с внедренными выражениями
- §9.4.4.24 Выражения вызова и выражения создания объектов
- §9.4.4.25 Простые выражения назначения
§9.4.4.26 && выражения- §9.4.4.27 || выражения
- §9.4.4.28 ! выражения
- §9.4.4.29 ?? выражения
- §9.4.4.30 ?: выражения
- Анонимные функции §9.4.4.31
- §9.4.4.32 Вызов выражений
- §9.4.4.33 Правила для переменных в локальных функциях
- §9.4.4.34 выражения с шаблонами
- Ссылки на переменные §9.5
- §9.6 Атомарность ссылок на переменные
-
§9.7 Ссылочные переменные и возвращается
- §9.7.1 Общее
-
§9.7.2 Ref безопасных контекстов
- §9.7.2.1 Общее
- §9.7.2.2 Локальный контекст ссылки на локальные переменные
- §9.7.2.3 Безопасный контекст ref параметров
- §9.7.2.4 Поле ref safe context
- Операторы §9.7.2.5
- Вызов функции §9.7.2.6
- §9.7.2.7 Значения
- §9.7.2.8 Конструктор вызовов
- §9.7.2.9 Ограничения ссылочных переменных
-
§10 Преобразования
- §10.1 Общее
-
§10.2 Неявные преобразования
- §10.2.1 Общее
- Преобразование удостоверений §10.2.2
- §10.2.3 Неявные числовые преобразования
- §10.2.4 Неявные преобразования перечисления
- §10.2.5 Неявные интерполированные преобразования строк
- §10.2.6 Неявные преобразования, допускающие значение NULL
- Преобразование литералов NULL 10.2.7
- §10.2.8 Неявные преобразования ссылок
- Преобразования бокса §10.2.9
- §10.2.10 Неявные динамические преобразования
- §10.2.11 Неявные преобразования выражений констант
- §10.2.12 Неявные преобразования с использованием параметров типа
- §10.2.13 Неявные преобразования кортежей
- §10.2.14 Определяемые пользователем неявные преобразования
- §10.2.15 Анонимные преобразования функций и преобразования групп методов
- §10.2.16 Преобразования литералов по умолчанию
- §10.2.17 Неявные преобразования вызовов
- §10.2.18 Преобразование выражений switch
-
Явные преобразования §10.3
- §10.3.1 Общее
- §10.3.2 Явные числовые преобразования
- §10.3.3 Явные преобразования перечисления
- §10.3.4 Явные преобразования, допускающие значение NULL
- Преобразование явных ссылок на §10.3.5
- §10.3.6 Явные преобразования кортежей
- §10.3.7 Распаковка преобразований
- §10.3.8 Явные преобразования с параметрами типа
- §10.3.9 Определяемые пользователем явные преобразования
- §10.4 Стандартные преобразования
- §10.5 Определяемые пользователем преобразования
- §10.6 Преобразования с использованием типов, допускающих значение NULL
- §10.7 Анонимные преобразования функций
- Преобразования групп методов §10.8
-
§11 Шаблоны и сопоставление шаблонов
- §11.1 Общее
-
Формы шаблонов §11.2
- §11.2.1 Общее
- Шаблон объявления §11.2.2
- Шаблон константы §11.2.3
- Шаблон Var §11.2.4
- §11.2.5 Позиционный шаблон
- §11.2.6 Шаблон свойств
- §11.2.7 Отмена шаблона
- §11.3 Подзапупка шаблона
- §11.4 Шаблоны исчерпывающего характера
-
Выражения §12
- §12.1 Общее
- Классификации выражений §12.2
-
§12.3 Статическая и динамическая привязка
- §12.3.1 Общее
- §12.3.2 Время привязки
- Динамическая привязка §12.3.3
- §12.3.4 Типы вложенных выражений
- Операторы §12.4
- Подстановка члена §12.5
-
Члены функции §12.6
- §12.6.1 Общее
- Список аргументов §12.6.2
-
§12.6.3 Тип вывода
- §12.6.3.1 Общее
- §12.6.3.2 Первый этап
- §12.6.3.3 Второй этап
- Типы входных данных §12.6.3.4
- Типы выходных данных §12.6.3.5
- §12.6.3.6 Зависимость
- §12.6.3.7 Вывод типов входных данных
- §12.6.3.8 Вывод типов выходных данных
- §12.6.3.9 Вывод типов явных параметров
- §12.6.3.10 Точные выводы
- §12.6.3.11 Вывод с нижней границой
- §12.6.3.12 Вывод с верхними границами
- §12.6.3.13 Закрепление
- §12.6.3.14 Выводимого типа возвращаемого значения
- §12.6.3.15 Вывод типа для преобразования групп методов
- §12.6.3.16 Поиск наиболее распространенного типа набора выражений
-
Разрешение перегрузки §12.6.4
- §12.6.4.1 Общее
- §12.6.4.2 Применимый член функции
- §12.6.4.3 Лучший член функции
- §12.6.4.4 Лучший режим передачи параметров
- §12.6.4.5 Лучшее преобразование из выражения
- §12.6.4.6 Точное сопоставление выражений
- §12.6.4.7 Лучший целевой объект преобразования
- Перегрузка §12.6.4.8 в универсальных классах
- §12.6.5 Компиляция во время проверки вызова динамического члена
- Вызов члена функции §12.6.6
- Деконструкция §12.7
-
Первичные выражения §12.8
- §12.8.1 Общее
- §12.8.2 Литералы
- §12.8.3 Интерполированные строковые выражения
- §12.8.4 Простые имена
- §12.8.5 Круглые скобки
- Выражения кортежа §12.8.6
- Доступ к члену §12.8.7
- §12.8.8 . Доступ к условному члену NULL
- §12.8.9 Выражения, допускающие значение NULL
-
Выражения вызова §12.8.10
- §12.8.10.1 Общее
- Вызовы метода §12.8.10.2
- Вызовы метода расширения §12.8.10.3
- §12.8.10.4 Делегирование вызовов
- §12.8.11 Выражение условного вызова NULL
-
Доступ к элементу §12.8.12
- §12.8.12.1 Общее
- Доступ к массиву §12.8.12.2
- §12.8.12.3 Строковый доступ
- §12.8.12.4 Доступ индексатора
- §12.8.13 Доступ к условному элементу NULL
- §12.8.14 Этот доступ
- §12.8.15 Базовый доступ
- §12.8.16 Операторы добавочного и декремента
-
§12.8.17 Новый оператор
- §12.8.17.1 Общее
-
§12.8.17.2 Выражения создания объектов
- §12.8.17.2.1 Общее
- §12.8.17.2.2 Инициализаторы объектов
- §12.8.17.2.3 Инициализаторы коллекции
- §12.8.17.3 Выражения создания анонимного объекта
- §12.8.17.4 Выражения создания массива
- §12.8.17.5 Выражения создания делегатов
- §12.8.18 Оператор typeof
- §12.8.19 Оператор sizeof
- §12.8.20 Проверенные и снятые операторы
- Выражения значений по умолчанию §12.8.21
- §12.8.22 Выделение стека
- §12.8.23 Оператор nameof
- Выражения анонимных методов §12.8.24
-
Унарные операторы §12.9
- §12.9.1 Общее
- Оператор Unary plus §12.9.2
- Оператор унарного минуса §12.9.3
- Оператор логического отрицания §12.9.4
- Оператор дополнения по битовой стрелке §12.9.5
- §12.9.6 Оператор index from-end
- §12.9.7 Операторы увеличения и уменьшения префикса
- §12.9.8 Выражения приведения
- §12.9.9 Выражения Await
- §12.10 Оператор range
- §12.11 Выражение switch
- §12.12 Арифметические операторы
- §12.13 Операторы shift
-
§12.14 Операторы реляционного и типового тестирования
- §12.14.1 Общее
- §12.14.2 Операторы сравнения целых чисел
- §12.14.3 Операторы сравнения с плавающей запятой
- §12.14.4 Операторы десятичного сравнения
- §12.14.5 Логические операторы равенства
- §12.14.6 Операторы сравнения перечислений
- §12.14.7 Операторы равенства ссылочных типов
- §12.14.8 Операторы равенства строк
- §12.14.9 Операторы делегирования равенства
- §12.14.10 Операторы равенства между типами значений, допускаемыми значением NULL, и литералом NULL
- §12.14.11 Операторы равенства кортежей
-
§12.14.12 Оператор is
- §12.14.12.1 Оператор is-type
- §12.14.12.2 Оператор is-pattern
- §12.14.13 Оператор as
- §12.15 Логические операторы
- §12.16 Условные логические операторы
- §12.17 Оператор объединения null
- §12.18 Оператор выражения", вызываемого вызовом
- §12.19 Выражения объявления
- §12.20 Условный оператор
-
§12.21 Анонимные выражения функций
- §12.21.1 Общее
- §12.21.2 Анонимные подписи функций
- §12.21.3 Анонимные тела функций
- §12.21.4 Разрешение перегрузки
- §12.21.5 Анонимные функции и динамическая привязка
-
§12.21.6 Внешние переменные
- §12.21.6.1 Общее
- §12.21.6.2 Захваченные внешние переменные
- §12.21.6.3 Создание экземпляра локальных переменных
- §12.21.7 Оценка анонимных выражений функций
- §12.21.8 Пример реализации
-
§12.22 Выражения запросов
- §12.22.1 Общее
- §12.22.2 Неоднозначность выражений запросов
-
§12.22.3 Преобразование выражений запроса
- §12.22.3.1 Общее
- §12.22.3.2 Выражения запросов с продолжением
- §12.22.3.3 Явные типы переменных диапазона
- §12.22.3.4 Вырождение выражений запросов
- §12.22.3.5 От, let, where, join and orderby clauses
- §12.22.3.6 Выбор предложений
- §12.22.3.7 Предложения групп
- §12.22.3.8 Прозрачные идентификаторы
- §12.22.4 Шаблон выражения запроса
- §12.23 Операторы назначения
- §12.24 Выражение
- §12.25 Константные выражения
- §12.26 Логические выражения
-
§13 Операторы
- §13.1 Общее
- §13.2 Конечные точки и доступность
- Блоки §13.3
- §13.4 Пустой оператор
- Операторы с метками §13.5
-
Операторы объявления §13.6
- §13.6.1 Общее
- §13.6.2 Локальные объявления переменных
- §13.6.3 Локальные объявления констант
- Объявления локальных функций §13.6.4
- Операторы выражений §13.7
- Операторы выбора §13.8
- Операторы итерации §13.9
- Операторы перехода §13.10
- §13.11 Инструкция try
- §13.12 Проверенные и снятые операторы
- §13.13 Инструкция блокировки
- §13.14 Инструкция using
- §13.15 Оператор доходности
- §14 Пространства имен
-
Классы §15
- §15.1 Общее
-
Объявления классов §15.2
- §15.2.1 Общее
-
Модификаторы классов §15.2.2
- §15.2.2.1 Общее
- Абстрактные классы §15.2.2
- Классы Sealed §15.2.2.3
-
Статические классы §15.2.2.4
- §15.2.2.4.1 Общее
- §15.2.2.4.2 , ссылающийся на типы статических классов
- Параметры типа §15.2.3
- Базовая спецификация класса §15.2.4
- Ограничения параметров типа §15.2.5
- Тело класса §15.2.6
- §15.2.7 Объявления частичного типа
-
Члены класса §15.3
- §15.3.1 Общие
- §15.3.2 Тип экземпляра
- §15.3.3 Члены созданных типов
- §15.3.4 Наследование
- §15.3.5 Новый модификатор
- Модификаторы доступа §15.3.6
- Типы компонентов §15.3.7
- §15.3.8 Статические и элементы экземпляра
- §15.3.9 Вложенные типы
-
§15.3.10 Зарезервированные имена элементов
- §15.3.10.1 Общее
- §15.3.10.2 Имена членов, зарезервированные для свойств
- §15.3.10.3 Имена участников, зарезервированные для событий
- §15.3.10.4 Имена членов, зарезервированные для индексаторов
- §15.3.10.5 Имена членов зарезервированы для методов завершения
- Имена методов §15.3.10.6 , зарезервированные для операторов
- Константы §15.4
- Поля §15.5
-
Методы §15.6
- §15.6.1 Общее
-
Параметры метода §15.6.2
- §15.6.2.1 Общее
- Параметры значения §15.6.2.2
-
§15.6.2.3 По ссылке
- §15.6.2.3.1 Общее
- §15.6.2.3.2 Входные параметры
- Параметры ссылки на §15.6.2.3.3
- Параметры вывода §15.6.2.3.4
- Массивы параметров §15.6.2.4
- Методы статического и экземпляра §15.6.3
- Виртуальные методы §15.6.4
- Методы Переопределения §15.6.5
- Запечатанные методы §15.6.6
- Абстрактные методы §15.6.7
- Внешние методы §15.6.8
- Частичные методы §15.6.9
- Методы расширения §15.6.10
- Текст метода §15.6.11
-
Свойства §15.7
- §15.7.1 Общее
- Свойства статического и экземпляра §15.7.2
- Методы доступа §15.7.3
- §15.7.4 Автоматически реализованные свойства
- Специальные возможности §15.7.5
- §15.7.6 Виртуальные, запечатанные, переопределения и абстрактные методы доступа
-
События §15.8
- §15.8.1 Общее
- События типа "15.8.2"
- Методы доступа к событиям §15.8.3
- §15.8.4 Статические и экземплярные события
- §15.8.5 Виртуальные, запечатанные, переопределения и абстрактные методы доступа
- Индексаторы §15.9
- Операторы §15.10
- Конструкторы экземпляров §15.11
- §15.12 Статические конструкторы
- Методы завершения §15.13
- §15.14 Асинхронные функции
-
§15.15 Синхронные и асинхронные итераторы
- §15.15.1 Общее
- §15.15.2 Интерфейсы перечислителя
- §15.15.3 Перечислимые интерфейсы
- §15.15.4 Тип доходности
-
§15.15.5 Объекты перечислителя
- §15.15.5.1 Общее
- §15.15.5.2 Перемещение перечислителя
- §15.15.5.3 Получение текущего значения
- §15.15.5.4 Удаление ресурсов
-
§15.15.6 Перечисление объектов
- §15.15.6.1 Общее
- §15.15.6.2 Метод GetEnumerator или GetAsyncEnumerator
-
§16 Структур
- §16.1 Общее
-
Объявления структуры §16.2
- §16.2.1 Общее
- Модификаторы структуры §16.2.2
- Модификатор ссылок 16.2.3
- §16.2.4 Частичный модификатор
- Интерфейсы структуры §16.2.5
- Текст структуры §16.2.6
- Элементы структуры §16.3
-
Различия между классами и структурой §16.4
- §16.4.1 Общее
- Семантика значений §16.4.2
- §16.4.3 Наследование
- Назначение §16.4.4
- §16.4.5 Значения по умолчанию
- §16.4.6 Бокс и распаковка
- §16.4.7 Значение этого
- Инициализаторы полей §16.4.8
- Конструкторы §16.4.9
- §16.4.10 Статические конструкторы
- §16.4.11 Свойства
- §16.4.12 Методика
- §16.4.13 Индексаторы
- §16.4.14 События
-
§16.4.15 Ограничение безопасного контекста
- §16.4.15.1 Общее
- §16.4.15.2 Безопасный контекст параметров
- §16.4.15.3 Безопасный контекст локальной переменной
- §16.4.15.4 Безопасный контекст поля
- §16.4.15.5 Операторы
- §16.4.15.6 Вызов метода и свойства
- §16.4.15.7 stackalloc
- §16.4.15.8 Вызовы конструктора
- Массивы §17
- §18 Расширенное индексирование и срезы
-
§19 Интерфейсы
- §19.1 Общее
- §19.2 Объявления интерфейса
- §19.3 Текст интерфейса
-
§19.4 Элементы интерфейса
- §19.4.1 Общее
- §19.4.2 Поля интерфейса
- §19.4.3 Методы интерфейса
- §19.4.4 Свойства интерфейса
- §19.4.5 События интерфейса
- §19.4.6 Индексаторы интерфейсов
- §19.4.7 Операторы интерфейса
- §19.4.8 Статические конструкторы интерфейса
- §19.4.9 Вложенные типы интерфейса
- §19.4.10 Наиболее конкретная реализация
- §19.4.11 Доступ к члену интерфейса
- §19.5 Квалифицированные имена элементов интерфейса
-
§19.6 Реализации интерфейса
- §19.6.1 Общее
- §19.6.2 Явные реализации элементов интерфейса
- §19.6.3 Уникальность реализованных интерфейсов
- §19.6.4 Реализация универсальных методов
- §19.6.5 Сопоставление интерфейсов
- §19.6.6 Наследование реализации интерфейса
- §19.6.7 Повторная реализация интерфейса
- §19.6.8 Абстрактные классы и интерфейсы
- §20 Перечисления
- §21 Делегаты
- §22 Исключения
-
§23 Атрибуты
- §23.1 Общее
- §23.2 Классы атрибутов
- §23.3 Спецификация атрибутов
- §23.4 Экземпляры атрибутов
- §23.5 Зарезервированные атрибуты
- §23.6 Атрибуты взаимодействия
- §24 Небезопасный код
-
§A Грамматика
- §A.1 Общее
- §A.2 Лексическая грамматика
- §A.3 Синтаксическая грамматика
- Расширения грамматики A.4 для небезопасного кода
-
Проблемы с переносимостью ;B
- §B.1 Общее
- §B.2 Неопределенное поведение
- Поведение, определяемое реализацией ;B.3
- •B.4 Неопределенное поведение
- §B.5 Другие проблемы
-
Стандартная библиотека §C
- §C.1 Общее
- §C.2 Стандартные типы библиотек, определенные в ISO/IEC 23271
- §C.3 Стандартные типы библиотек, не определенные в ISO/IEC 23271
- Спецификации формата §C.4
- Аббревиаций типов библиотеки §C.5
-
Примечания к документации по §D
- §D.1 Общее
- Введение в §D.2
-
§D.3 Рекомендуемые теги
- §D.3.1 Общее
- §D.3.2<C>
- Код §D.3.3<>
- Пример "D.3.4"<>
- Исключение §D.3.5<>
- §D.3.6<включают>
- Список §D.3.7<>
- §D.3.8<Пункт>
- §D.3.9<Param>
- §D.3.10<paramref>
- Разрешение "D.3.11"<>
- Примечания "D.3.12<">
- Возвращается "D.3.13<">
- §D.3.14<см.>
- §D.3.15<см. также>
- Сводка по D.3.16<>
- §D.3.17<typeparam>
- §D.3.18<typeparamref>
- Значение §D.3.19<>
- §D.4 Обработка файла документации
-
Пример "D.5 "
- Исходный код C# §D.5.1
- §D.5.2 Результирующий XML
- §E Библиография
GitHub сайтында бізбен бірлесіп жұмыс істеу
Бұл мазмұнның көзін GitHub сайтында табуға болады. Онда сонымен бірге мәселелер мен өзгертулерді енгізу сұрауларын жасауға және қарап шығуға болады. Қосымша ақпарат алу үшін қатысушы нұсқаулығын қараңыз.
ECMA C# draft specification