Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю. Страница 8

   Понятие анонимных типов

    Определение анонимного типа

    Внутреннее представление анонимных типов

    Реализация методов ToString() и GetHashCode()

    Семантика эквивалентности анонимных типов

    Анонимные типы, содержащие другие анонимные типы

   Работа с типами указателей

    Ключевое слово unsafe

    Работа с операциями * и &

    Небезопасная (и безопасная) функция обмена

    Доступ к полям через указатели (операция ->)

    Ключевое слово stackalloc

    Закрепление типа посредством ключевого слова fixed

    Ключевое слово sizeof

   Резюме

  Глава 12

   Понятие типа делегата

    Определение типа делегата в C#

    Базовые классы System.MulticastDelegate и System.Delegate

   Пример простейшего делегата

    Исследование объекта делегата

   Отправка уведомлений о состоянии объекта с использованием делегатов

    Включение группового вызова

    Удаление целей из списка вызовов делегата

    Синтаксис групповых преобразований методов

   Понятие обобщенных делегатов

    Обобщенные делегаты Action<> и Func<>

   Понятие событий C#

    Ключевое слово event

    "За кулисами" событий

    Прослушивание входящих событий

    Упрощение регистрации событий с использованием Visual Studio

    Создание специальных аргументов событий

    Обобщенный делегат EventHandler<T>

   Понятие анонимных методов C#

    Доступ к локальным переменным

    Использование ключевого слова static с анонимными методами (нововведение в версии 9.0)

    Использование отбрасывания с анонимными методами (нововведение в версии 9.0)

   Понятие лямбда-выражений

    Анализ лямбда-выражения

    Обработка аргументов внутри множества операторов

    Лямбда-выражения с несколькими параметрами и без параметров

    Использование ключевого слова static с лямбда-выражениями (нововведение в версии 9.0)

    Использование отбрасывания с лямбда-выражениями (нововведение в версии 9.0)

    Модернизация примера CarEvents с использованием лямбда-выражений

    Лямбда-выражения и члены, сжатые до выражений (обновление в версии 7.0)

   Резюме

  Глава 13

   Программные конструкции, специфичные для LINQ

    Неявная типизация локальных переменных

    Синтаксис инициализации объектов и коллекций

    Лямбда-выражения

    Расширяющие методы

    Анонимные типы

   Роль LINQ

    Выражения LINQ строго типизированы

    Основные сборки LINQ

   Применение запросов LINQ к элементарным массивам

    Решение с использованием расширяющих методов

    Решение без использования LINQ

    Выполнение рефлексии результирующего набора LINQ

    LINQ и неявно типизированные локальные переменные

    LINQ и расширяющие методы